【数据库】MySQL基本查询

1.单行插入

insert into students values (100, 10000, '小红', NULL);

2.多行插入

insert into students (id, sn, name) VALUES
(102, 20001, '小文'),
(103, 20002, '小红');

3.替换

  • 主键或者唯一键没有冲突,则直接插入
  • 主键或者唯一键如果冲突,则删除后再插入
replace into students (sn,name) values (1000,'小明');

4.全列查询

select * from exam_result;

5.指定列查询

select id,name from exam_result;

6.查询字段为表达式

SELECT id, name, math+10 FROM exam_result;

7.结果去重

select distinct math from exam_result;

8.模糊查询

  • % 匹配任意多个(包括 0 个)任意字符
  •  _ 匹配严格的一个任意字符
SELECT name FROM exam_result WHERE name LIKE '孙%';//姓孙的同学
SELECT name FROM exam_result WHERE name LIKE '孙_';//孙某同学

9.结果排序

SELECT name, qq FROM students ORDER BY qq DESC;

10.一次更新一个列

UPDATE exam_result SET math = 80 WHERE name = '孙悟空';//将孙悟空同学的数学成绩变更为 80 分

11.一次更新多个列

UPDATE exam_result SET math = 60, English = 70 WHERE name = '小红';//将小红同学的数学成绩变更为 60 分,英语成绩变更为 70 分

12.筛选结果分页

//起始下标为 0

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n;//从 0 开始,筛选 n 条结果

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT s, n;//从 s 开始,筛选 n 条结果

SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n OFFSET n;//从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用

如果某一页不足n个,有几个,显示几个:

SELECT id, name, shuxue, yingyu, yuwen FROM exam_result ORDER BY id LIMIT 3 OFFSET 6;

13.删除数据

DELETE FROM exam_result WHERE name = '孙文';

14.分组查询

select avg(sal),min(sal),job, deptno from EMP group by deptno, job;//显示每个部门的每种岗位的平均工资和最低工资

15.删除表中的重复项

DELETE FROM table_a 
WHERE id IN 
(SELECT id FROM (SELECT id FROM table_a GROUP BY c_1,c_2 HAVING count(*) > 1)e);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值