_DML 操作数据
添加数据
给指定的列添加数据:
INSERT INTO 表名(列名1,列名2,...)VALUES(值1, 值2,....);
给全部列添加数据:
INSERT INTO 表名 VALUES(值1,值2,...);
批量添加数据:
INSERT INTO 表名 (列名1,列名2,...) VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...)...;
INSERT INTO 表名 VALUES(值1,值2,...),(值1,值2,...)...;
修改数据
修改表数据
UPDATE 表名 SET 列名1 = 值1,列名2 = 值2,...WHERE 条件;
**注意:修改语句中如果不加条件,则将所有数据都修改**
删除数据
DELETE FROM 表名 WHERE 条件
***注意:删除语句中如果不加条件,则将所有的数据删除!!!*
# 添加数据 在p_test表中
-- insert into p_test
select *
from p_test ;
* 修改表
-- 修改表名
-- ALTER TABLE 表名 RENAME TO 新的表名;
-- 添加一列
-- ALTER TABLE 表名 ADD 列名 数据类型;
alter table p_test add address varchar(32);
select *
from p_test ;
-- 修改数据类型
-- ALTER TABLE 表名 MODIFY 列名 新数据类型;
alter table p_test modify address varchar(64);
-- 修改列名和数据类型
-- ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;
alter table p_test change address homeAddress varchar(64);
select *
from p_test;
-- 删除列
-- ALTER TABLE 表名 DROP 列名;
alter table p_test drop homeAddress;
select *
from p_test pt ;
-- 1. 添加数据
-- 给指定的列添加数据:
-- ```SQL
-- INSERT INTO 表名(列名1,列名2,...)VALUES(值1, 值2,....);
insert into p_test(id , username , age) values (100, "Alex", 80);
insert into p_test(id , username , age) values (101, "Tom", 90);
insert into p_test(id , username , age) values (102, "Jack", 70);
insert into p_test(id , username , age) values (103, "Jne", 100);
select *
from p_test pt ;
-- 给全部列添加数据:
- ```SQL
INSERT INTO 表名 VALUES(值1,值2,...);
批量添加数据:
INSERT INTO 表名 (列名1,列名2,...) VALUES(值1,值2,...),(值1,值2,...),(值1,值2,...)...;
INSERT INTO 表名 VALUES(值1,值2,...),(值1,值2,...)...;
-- 修改表数据
-- UPDATE 表名 SET 列名1 = 值1,列名2 = 值2,...WHERE 条件;
-- **注意:修改语句中如果不加条件,则将所有数据都修改**
update p_test set username = 'Jack';
update p_test set age = 10 where username = 'Alex';
select *
from p_test pt ;
-- 删除数据
-- DELETE FROM 表名 [WHILE 条件]
-- ***注意:删除语句中如果不加条件,则将所有的数据删除!!!*
delete from p_test ;
delete from p_test where username = 'Alex';
select *
from p_test pt ;
_DQL基础查询
SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP
分组列表
HAVING
分组后条件
ORDER
排序字符
LIMIT
分页限定
条件查询法:
SELECT 字段列表 FROM 表名 WHERE 条件列表
条件:
符号功能>大于<小于>=大于等于<=小于等于=等于!=不等于<=>绝对等于BETWEEN … AND在某个范围之内(都包含)IN( … )多选一LIKE 占位符模糊查询_单个字符 %多个字符IS NULL是NULLIS NOT NULL不是NULLAND 或者 &&并且OR 或者或者NOT 或 !非,不是
_DQL 排序查询
排序查询语法:
SELECT 字段列表 FROM ORDER BY 排序字段名1[排序方式1], 排序字段名2[排序方式2]...;
排序方式:
ASC :升序排列(默认值)DESC:降序排列 注意:如果有多个排序条件,当前面的条件之一样时,才会根据第二条件进行排序 /*
--排序查询语法:
-- ```sql
SELECT 字段列表 FROM ORDER BY 排序字段名1[排序方式1], 排序字段名2[排序方式2]...;
- 排序方式:
- ASC :升序排列(默认值)
- DESC:降序排列
注意:如果有多个排序条件,当前面的条件之一样时,才会根据第二条件进行排序
*/
-- 需求:将表employees中按salary降序排序
select *
from employees e ;
select last_name ,salary
from employees e order by salary desc ;
-- 需求:将表employees中按部门id升序,再按salary降序排序
select *
from employees e ;
select last_name ,salary ,department_id
from employees e order by department_id , salary desc ;
_DQL 聚合函数
概念:
将这一列数据作为整体,进行纵向计算; 聚合函数分类:
函数名功能max(列名)最大值min(列名)最小值sum(列名)求和count(列名)统计该列一共有多少种元素(一般选用不为null的列)avg(列名)平均值 聚合函数法:
SELECT 聚合函数名(列名) FROM 表;
注意:NULL值不参与所有聚合函数的运算 /*
概念:
- 将这一列数据作为整体,进行纵向计算;
- 聚合函数分类:
- | 函数名 | 功能 |
| ----------- | ------------------------------ |
| max(列名) | 最大值 |
| min(列名) | 最小值 |
| sum(列名) | 求和 |
| count(列名) | 统计该列一共有多少个元素(一般选用不为null的列)|
| avg(列名) | 平均值 |
- 聚合函数法:
- ```sql
SELECT 聚合函数名(列名) FROM 表;
- 注意:NULL值不参与所有聚合函数的运算
*/
-- 需求:查询employees中工资最高的成员
select first_name ,last_name , max(salary)
from employees e ;
-- 需求:查询employees中工资最低的成员
select first_name ,last_name ,min(salary)
from employees e ;
-- 需求:查询employees表中企业每个月需要给员工多少钱
select first_name ,last_name ,sum(salary)
from employees e ;
-- 需求:查询一共需要个多少个员工发工资
select count(salary)'总人数为'
from employees e ;
-- 需求:查看公司员工的平均月工资
select avg(salary)'月平均工资'
from employees e ;
精彩内容
发表评论