Linux中的MySQL(三)DML&&DQL

DML语句
一.目的:在MySQL管理软件中,DDL已经定义了数据库结构。可以通过SQL语言中的DML语句来实现数据的操作,包括使用。
INSERT 实现数据的 插入
DELETE 实现数据的 删除
UPDATE 实现数据的 更新。
二.插入数据INSERT
完整插入
语法 INSERT INTO 表名 VALUES (值1,值2,值3…值n);
部分插入
语法 INSERT INTO 表名(列名,列名) VALUES (值1,值2);
insert into t1(id, name) values(1,‘aa’);
三.更新数据UPDATE
语法 UPDATE 表名 SET 列名=值 WHERE CONDITION;(条件)
准备一张表
mysql> create table t2(id int, name varchar(20)); mysql> insert into t2 values(1,‘aa’); mysql> insert into t2 values(2,‘bb’);
更新数据需求:把bb改成cc
update t2 set name=‘cc’ where id=2;
查询结果`mysql> select * from t2;
修改mysql数据库管理员root账户的密码。
update mysql.user set authentication_string=password(“QianFeng@123456”) where user=“root”;
四.删除数据delete
语法:DELETE FROM 表名 WHERE CONDITION;
需求:删除id为2 的用户记录。
delete from t2 where id=2;
DQL语言
目的:在MySQL管理软件中,可以通过SQL语句中的DQL语言来实现数据的,SELECT 查询操作。
MySQL查询
一.准备环境
素材
在这里插入图片描述
结构语句:创建库 create database company;
进入库 use company
创建表 create table employee5(id int primary key AUTO_INCREMENT not null,
name varchar(30) not null,
sex enum(‘male’,‘female’) default ‘male’ not null,
hire_date date not null,
post varchar(50) not null,
job_description varchar(100),
salary double(15,2) not null,
office int,
dep_id int
);
查看表结构 desc employee5;
插入数据
insert into employee5(name,sex,hire_date,post,job_description,salary,office,dep_id) values
(‘jack’,‘male’,‘20180202’,‘instructor’,‘teach’,5000,501,100),
(‘tom’,‘male’,‘20180203’,‘instructor’,‘teach’,5500,501,100),
(‘robin’,‘male’,‘20180202’,‘instructor’,‘teach’,8000,501,100),
(‘alice’,‘female’,‘20180202’,‘instructor’,‘teach’,7200,501,100),
(‘aofa’,‘male’,‘20180202’,‘hr’,‘hrcc’,600,502,101),
(‘harry’,‘male’,‘20180202’,‘hr’,NULL,6000,502,101),
(‘emma’,‘female’,‘20180206’,‘sale’,‘salecc’,20000,503,102),
(‘christine’,‘female’,‘20180205’,‘sale’,‘salecc’,2200,503,102),
(‘zhuzhu’,‘male’,‘20180205’,‘sale’,NULL,2200,503,102),
(‘gougou’,‘male’,‘20180205’,‘sale’,’’,2200,503,102);
一、简单查询
查看所有列,需要进入数据库,如果不进入数据库,就请输入库名。
SELECT * FROM 表名;
查部分列 SELECT 列1,列2,列3 FROM 表名;
通过四则运算查询 加减乘除
二.条件查询
1.单条件查询where
查询sale部门的员工姓名
select name,post from employee5 where post=‘sale’;

2.多条件查询AND/OR
查询hr部门的员工,并且工资大于1000
select name,salary from employee5 where post=‘hr’ and salary>1000;
查询所有部门的员工,并且工资是6000或者8000的员工
select name,salary from employee5
where salary=6000 or salary=8000;
3.关键字BETWEEN AND 在什么之间
需求:查一查薪资在5000到15000
select name,salary from employee5 where salary between 5000 and 15000
如果不在两数之间可以加not
select name,salary from employee5 where salary not between 5000 and 15000
4.关键字IN集合查询
select name,salary from employee5 where salary in(4000,5000,8000);
5.关键字IS NULL 需求:没有岗位描述的

select name,job_description from employee5 where job_description is null;
6.关键字LIKE模糊查询 查员工姓就可以出名字
select * from employee5 where name like ‘a%’; 通配符’%’代表多个任意字符
注意不是shell的"*“星号。mysql使用”%"
select * from employee5 where name like ‘a___’; 注意不是shell的“?”问号。mysql使用""下划线,通配符’’代表1个任意字符

三、查询排序
1.例如以工资升序排列
SELECT * FROM 表名 ORDER BY 工资的列名 ASC;
2.例如以工资降序排列
SELECT * FROM 表名 ORDER BY 工资的列名 DESC;
3.工资最高的前五名
SELECT * FROM 表名 ORDER BY 工资列名 DESC LIMIT 5;(LIMIT 限制 //默认初始位置为0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值