DML
DML操作是只对数据库中表记录的操作,主要包括表记录的插入(INSERT)、更新(UPDATE)、删除(DELETE)
插入 INSERT
插入单条语句
INSERT INTO 表名(字段名。。。) values(值...);
语法1 字段全写和值一一对应
INSERT INTO 表名(id, name,age) values(1,'zs',18);
语法2 字段名全部不写 值全写
INSERT INTO 表名 values(1,'zs',18);
语法3 写部分字段,字段和值一一对应
INSERT INTO 表名(name, age) values('zs',18);
插入多条语句
INSERT INTO 表名(字段名。。。)
values(值列表1...)
values(值列表2...);
例子:
INSERT into subject(subjectName,classHour,gradeID)
values ('Logic','Java',2001,1),
values ('Java',3001,2);
将查询结果插入到新表
insert into 新表(字段1,字段2,...) select 字段1,字段2,... from 原表;
更新 UPDATE
UPDATE tablename SET FIELD1=value1,field2=value2,...fieldn=valuen [WHERE CONDITION]
例子:
将所有员工薪水修改为5000元
Update employee set salary=5000;
将姓名为’zs’的员工薪水修改为3000元。
Update employee set salary=3000 where username=’zs’;
将姓名为’lisi’的员工薪水修改为4000元,性别改为woman。
Update employee set salary=4000,gender=’woman’ where username=’lisi’;
将ww的薪水在原有基础上增加1000元。
Update employee set salary=salary+1000 where username=’ww’;
删除DELETE
DELETE FROM tablename [WHERE CONDITION]
例子:
删除表中名称为’zs’的记录。
Delete from employee where username=’zs’;
删除表中所有记录。(一条一条的删除)
Delete from employee;
使用truncate删除表中记录(摧毁整张表格,重新建立表结构,效率高)
truncate table employee;
(delete 是一条一条的删除语句,而truncate 删除整个表格...)
DQL
数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块
语法:
SELECT * FROM tablename [WHERE CONDITION]
常见的SELECT语句:
- 查询全部或者某个字段信息
# 查询表里所有的信息
SELECT * From table_name;
# 查询表里所有的用户的姓名信息
SELECT name From table_name;
# 过滤表中的重复的信息
SELECT DISTINCT name From table_name;
- 多字段运算 及其 别名
# as:表示给某一列起别名;并且as 可以省略;
SELECT name as 名字 From table_name;
# 字段运算
SELECT math+10 From table_name;
# 运算 并且添加列名
SELECT math + chinese + english as 总分 From table_name;
- where语句过滤查询
注: 逻辑运算符优先级 not and or
# 查询math大于90分的学生的所有信息
SELECT * From table_name where math > 90;
# 查询math成绩在80到90之间的
SELECT * From table_name where math BETWEEN 80 and 90;
# 查询姓 李 的同学的成绩
SELECT * From table_name where name like “李%”;
- order by 排序
# Asc: 升序(默认), Desc: 降序
# 对成绩排序后输出所有学员信息
SELECT * From table_name order by column_name;
# 对成绩按从高到低排序后 输出学员姓名
SELECT * From table_name order by column_name DESC;
- Limit 语句查询
# 显示表格中的前3行。
SELECT * From table_name limit 3;
# 显示表格中的第3~5行。 注: 2表示偏移几行,3表示显示的总行
SELECT * From table_name limit 2,3;