DQL语言之查询(一)

一、基本查询
1、语法
select 查询列表 from 表名;
2、特点
查询列表可以是字段、常量、字符串、函数
查询结果是一个虚拟表
3、示例
(1)查询单个字段:select 字符名 from 表名;
(2)查询多个字段:select 字符名,字符名 from 表名;
(3)查询所有字段:select * from 表名;
(4)查询常量:select 常量值;
注意:字符型和日期型的常量要用单引号引起来
(5)查询函数:select 函数名(实参列表);
注意:函数调用必须用select,且mysql的函数均有返回值
(6)查询表达式:select 表达式;(不支持++,–,==)
(7)起别名
a.AS
b.空格
(8)去重:select distinct 字段名 from 表名;
注意:只能有一个字段名
(9)加号:只能用于运算
字符加数值,先试图将字符转化成数值。若成功,继续运算,若失败,赋值0进行加法运算,null与任何相加都为null
(10)补充函数
concat函数:用于拼接字符
ifnull函数:判断字段与表达式是否为null,若是,返回指定值,若不是,返回原始值
isnull函数:判断字段与表达式是否为null,若是,返回1,若不是,返回,0
二、条件查询
1.语法
select 查询列表 from 表名 where 筛选条件;
2.筛选条件的分类
(1)简单条件运算符
< > <= >= != <> = <=>安全等于,可以判断null与普通数值
(2)简单逻辑运算符
&& || ! 在mysql中建议写成and or not
(3)模糊查询
like(查找包涵某字符的值,可以使用通配符:%——任意多位数通配符,可以表示无;_——任意单个通配符)
between and
in(满足某些条件中的任意一个,即或的关系)
isnull(用于判断null值)
三、排序查询
1.语法
select 查询列表 from 表名 where 筛选条件 order by 排序列表
2.特点
asc——升序(默认);desc——降序
支持单个,多个字段,函数,表达式,别名
order by一般放在查询语句的最后(除limit语句之外)
四、分组查询
1、语法
select 分组函数,分组后的字段 from 表名 where 筛选条件 group by 分组字段 having 分组后的筛选 order by 排序列表
执行顺序:from—where—group by—having—select—order by
2、特点
使用的关键字 筛选的表 位置
分组前筛选 where 原始表 group by之前
分组后筛选 having 分组后的结果 group by之后
判断分组前还是分组后筛选
先写出框架

select 查询列表(要求是分组函数和group by后出现的字段)
from 表名 
group by 分组列表

当筛选条件可以在原有表中表示出来,就用where,分组前筛选
分组函数做条件,肯定放在having语句中
分组前和分组后都可以的话优先进行分组前筛选,性能较好

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值