数据库学习之SQL查询详解

时间:2022-07-28
本文章向大家介绍数据库学习之SQL查询详解,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

查询语句基本格式:SELECT 列名/* FROM 表名 (WHERE 条件组合 )

示例数据表

1.查询所有

查询全部学生

select*fromstudent;

2.部分查询(查询一个或多个字段值)

查询所有姓名和年龄

selectSname,Sagefromstudent;

3.单条件查询

关键字where 表示条件,在where之后跟过滤的条件

下面的运算符可在WHERE 子句中使用:

  • 比较运算符包括: = ,>,<,>=,<=,<>
  • 逻辑运算符:NOT,AND,OR
  • 确定范围运算符:BETWEEN AND, NOT BETWEEN AND

select*fromstudentwhereSage<18;

区间范围查询

select*fromStudentwhereSagebetween18and20;

集合方式查询

select*fromStudentwhereSagein('18','20');

4.多条件查询

and 关键字表示和(并且),需要两边条件同时满足

select*fromStudentwhereSsex='男'andSage>18

or 表示或 两边条件只要满足一个就可以

select*from表名whereSsex='女'orSclass='大一'

5.分组查询(分组函数)

group by 关键字表示分组,按照一个字段的值进行分组,相同的值组成一组 注意:分组函数一般与聚合函数一起使用

selectSsex,count(*)fromstudentgroupbySsex;

6.分组后筛选查询

Having 关键键表示条件,为分组函数的专用条件关键字跟在分组后面类似where条件

selectSsex,count(*)asaafromstudentgroupbySsexhaving aa>=1;

7.结果排序

order by 关键字表示排序,默认为正序排列(asc),倒序(desc)

select*fromStudentorderbySage

8.子条件查询

将一个查询结果当做条件来用,此种情况成为子条件查询

select*fromStudentwhereSage=(selectmax(Sage)fromStudent);

9.分页查询

使用关键字limit, 关键字之后如果为一个数字,则表示当前分页显示多少条数据。在关键字之后跟两个数字a,b,表示从a开始取b条数据。

从0开始取2条数据

select*fromStudentorderbySagelimit0,2

10.模糊查询

模糊查询LIKE 或NOT LIKE

select*from表名wherey_name like'%a%';

like 关键字表示模糊,后面跟'单引号' %模糊的内容%

  • '%a%’表示只要该字段含有a字
  • ‘a%’表示要模糊的字必须处于该字段的首位
  • ‘%a’表示要模糊的字必须处于该字段末位