数据查询

一、连接查询

1、all、tistinct

all   允许出现重复行    默认不写就是all

tistinct    消除重复行

2、from子句  指定数据的来源

3、where子句  

①比较运算符: >   >=   <    <=   =(等于)   <>(不等于)    ==(等于,mysql扩展),!=(不等于,mysql扩展)

     逻辑运算符: and(与)  or(或)   not(非)

②between语法: XX  between  值1  and   值2;

③in语法: Xx = 1 or  xx = 2 or xx =3...

               XX  in (值1,值2,.......);

④ike语法(模糊查找):  语法形式: XX like  ‘要查找字符’;

           字符:%   其含义是:代表任意个数的任意字符          _   其含义是:代表1个的任意字符

4、group by分组子句    

分组就是将数据以某个字段的值为“依据”,分到不同的“组别”里。 这几个可能的值:组内成员的个数,组内某些字段的最大值,最小值,平均值,总和值。

其他字段,通常就不能用了。

 

形式: group  by  字段1  排序方式1,字段2 排序方式2, .....

在分组查询中,有以下几个函数:

count(*):  统计一组中的数量,通常用“*”做参数。

max(字段名):获取该字段中在该组中的最大值。

min(字段名):获取该字段中在该组中的最小值。

sum(字段名):获取该字段中在该组中的总和。

avg(字段名):获取该字段中在该组中的平均值。

group_concat(字段名):获取该分组内的这个字段所有信息,每条逗号分隔。

5、having子句

having子句其实和where一样,用来作条件判断的。

where对表的字段的值进行判断

having对group by之后的 组 数据进行判断

6、order by子句

形式:  order  by  排序字段1  [排序方式],  排序字段2  [排序方式], .....

说明:对前面取得的数据来指定按某个字段的大小来进行排序

排序的两种方式:  正序 asc(默认值 可以省略)    倒序 desc

7、limit子句

形式:limit   [起始行号start], 要取出的行数num

起始行号的第一行行号为0 ,默认行号0(可以省略)

二、连接查询

连接就是将两个或两个以上的表连接起来成为一个"数据源"

形式: from 表1  [连接方式]  join 表2  [on 连接条件];

三、子查询

子查询就是将查询结果当条件

形式:selelct 字段或表达式或(子查询1) [as 别名] from 表名或(子查询2) where 字段或表达式或(子查询3) 的条件判断

四、联合查询

联合查询就是将两个select语句的查询结果“层叠”到一起成为一个“大结果”。

联合查询的关键字:union

连接查询的关键字: join

 

posted @ 2018-12-19 11:43  跑很快的土豆  阅读(198)  评论(0编辑  收藏  举报