MySQL基础之查询数据

基本查询语句

select    *|[字段列表]     from 表1,表2....     where 查询条件;

select    [字段1,字段2,......]   from [表或试图]   where [查询条件]  order by [排序方式]  group by [按字段分组显示]

MySQL基础之查询数据


单表查询

查询所有字段select * from fruits;

MySQL基础之查询数据

 在select语句中指定字段:select 字段名 from 表名;

MySQL基础之查询数据

查询指定记录: select 字段名... from 表名 where 查询条件

操作符:   =  <>   !=   <   >   <=   >=   between

MySQL基础之查询数据  

in关键字查询

MySQL基础之查询数据

between and范围查询

MySQL基础之查询数据

like字符匹配查询 (%匹配任意字符,0个也可以。_匹配单个字符)

MySQL基础之查询数据

查询空值is null

MySQL基础之查询数据

andor的多条件查询

MySQL基础之查询数据

查询结果去重distinct

MySQL基础之查询数据

对查询结果排序order by:单列排序,多列排序,指定排序方向(desc降序,asc升序)

MySQL基础之查询数据

分组查询

创建分组 以s_id为基准进行分组

MySQL基础之查询数据

MySQL基础之查询数据显示每个分组的成员

使用having过滤分组

MySQL基础之查询数据

使用with rollup统计分组成员数量

MySQL基础之查询数据

使用limit限制查询结果数量

MySQL基础之查询数据

使用聚合函数查询

count()

MySQL基础之查询数据

sum()

MySQL基础之查询数据

avg()

MySQL基础之查询数据

max(),min()

MySQL基础之查询数据


链接查询


MySQL基础之查询数据


内链接查询

MySQL基础之查询数据

inner join实现内连接查询

MySQL基础之查询数据

外链接查询

left join     左链接 ,返回包括左表中的所有记录和右表中连接字段相等的记录

right join  右链接,返回包括右表中的所有记录和左表中连接字段相等的记录

MySQL基础之查询数据

MySQL基础之查询数据

复合条件连接查询

MySQL基础之查询数据


子查询


带any some关键字的子查询

MySQL基础之查询数据

MySQL基础之查询数据

MySQL基础之查询数据

带all关键字的子查询

MySQL基础之查询数据

带exists关键字的子查询 exists内层查询结果返回true则执行外层查询

MySQL基础之查询数据

带in关键字的子查询

MySQL基础之查询数据

带比较运算符的子查询

子查询中条件匹配带 >  <  =  != ..... 等


MySQL基础之查询数据

合并查询结果


使用union/union all使用多条查询语句把查询结果合成一个,并去重

MySQL基础之查询数据


为表和字段取别名


表名  as  表别名

列名  as  列别名

MySQL基础之查询数据


正则表达式查询


^  $  .  *  + 分别为开头,结尾,单个字符,任意字符,至少一个字符

regexp  匹配包含字符串或者单个字符中的一个,regexp ‘ba’包含ba的字符串,regexp ‘[ae]’匹配包含a或者e的字符串

{n,} {n,m} 前面的字符或者字符串出现n次,少于m次