博客
关于我
MySql各种查询
阅读量:792 次
发布时间:2023-02-12

本文共 1477 字,大约阅读时间需要 4 分钟。

数据库查询优化指南

1. 基础查询

简单查询

select * from info;
select Code as '代号', name as '姓名' from info;

条件查询

select * from car where code = 'c002';
select * from car where brand = 'b001' or power = 130;

2. 模糊查询

select * from car where name like '%奥迪%';

注意:%表示任意多个字符,_表示单个字符。

3. 排序查询

select * from car order by brand, power desc;

默认排序为升序,不需要写asc

4. 范围查询

select * from car where price between 40 and 60;

5. 离散查询

select * from car where code in('coo1','c003','c005','c007');
select * from car where code not in('coo1','c003','c005','c007');

6. 统计查询(聚合函数)

select count(code) from car; -- 查询记录数
select sum(price) from car; -- 查询总和
select max(code) from car; -- 查询最大值
select min(brand) from car; -- 查询最小值
select avg(price) from car; -- 查询平均值
select year(brithday) from dtudent; -- 提取生日的年份

7. 分页查询

select * from Car limit (n-1)*5,5; -- 取第n页,每页显示5条

8. 去重查询

select distinct Brand from Car;

9. 分组查询

select Brand, count(*) from Car group by Brand; -- 按品牌分组并统计记录数
select Brand from Car group by Brand having count(*) > 3; -- 分组后按条件筛选

10. 高级查询

连接查询(扩展字段)

select Info.Code, Info.Name, Info.Sex, Nation.Name, Info.Birthday from Info, Nation where Info.Nation = Nation.Code;

联合查询(扩展行)

select Code, Name from Infounionselect Code, Name from Nation;

子查询

无关子查询

select * from Info where Nation = (select Code from Nation where Name = '汉族');

相关子查询

select * from Car a where Oil < (select avg(Oil) from Car b where b.Brand = a.Brand);

注意事项

  • 使用group by时,注意having语句进行筛选。
  • 子查询通常用于条件限制或聚合函数中。
  • like查询中,%_的使用需要谨慎,避免过度匹配。

转载地址:http://jqbfk.baihongyu.com/

你可能感兴趣的文章
mysql备份
查看>>
mysql备份与恢复
查看>>
mysql备份工具xtrabackup
查看>>
mysql备份恢复出错_尝试备份/恢复mysql数据库时出错
查看>>
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>
mysql字段类型不一致导致的索引失效
查看>>
mysql字段类型介绍
查看>>