select语句具备以下功能: select语句格式如下: 注: 任何直接包含 反引号 反引号用于区分保留字、关键字与其他内容,通常用于列名或者表名。 单引号 表达某个字符串的值。 如果值中包含单引号,可以在单引号字符串内用两个单引号转义,也可以用在双引号字符串内直接用一个单引号(推荐用法) 双引号 通常用于列的别名,也可以用于表达字符串的值 如果值中包含双引号,可以在双引号字符串内用两个双引号转义,也可以用在单引号字符串内直接用一个双引号(推荐用法) 列的别名 用法 注意事项 当新列名中包含空格、大小写、特殊字符时,新列名可以使用反引号、单引号、双引号 英文转中文的常用场景 使用示例 使用 使用 使用 注意:日期一般不建议使用比较运算符,统一使用日期函数
注意:
注意:
使用示例:
注意:
使用示例: 逻辑运算符包括 注意: 使用逻辑运算符要勤加括号,避免优先级问题文章目录
一、select语句
1、作用
2、语法
select [distinct] * from 表名; select [distinct] 列名列表 from 表名; select [distinct] 表达式 [from 表名];
select * from 表名
和select 所有列 from 表名
结果虽然一样,但是从性能上讲select * from 表名
的性能要差一点。因此在数据量很大的时候,如果要查询所有值,还是建议用select 所有列 from 表名
进行查询3、空值处理
null
值的算术表达式运算后的结果仍然为空值select null + 100; -- 结果仍为null
ifnull(表达式1, 表达式2)
在计算时对null
值进行替换处理:当表达式1为null
时,整个式子值为表达式1,否则值为表达式2
注:MySQL中的ifnull
函数,可以相当于Oracle中的nvl
函数select ifnull(1, 2); -- 结果为1 select ifnull(null, 2); -- 结果为2
4、反引号、单引号、双引号
select `name` from `use`;
select * from emp where ename = 'smith';
select * from emp where ename = 'smi''th';
select * from emp where ename = "smi'th"; -- 推荐写法
select * from emp where ename = "smith";
select * from emp where ename = "smi""th";
select * from emp where ename = 'smi"th'; -- 推荐写法
5、列和表的别名
列名 新列名 -- 写法1 列名 as 新列名 -- 写法2
– 查询中SQL语句别名
– 视图中SQL语句别名
– 前端页面展示页面处理select ename as 姓名, sal as 工资 from emp; select enmae as `NAME`, sal*12 as "年 薪" from emp;
6、distinct去重
distinct
关键字消除查询结果的重复行select job from emp; select distinct job from emp;
7、查询表结构
desc
关键字查询表结构desc 表名;
8、条件查询
(1).限定条件
where
子句增加查询限定条件select [distinct] 列名列表 from 表名 where 条件表达式;
(2).常用比较运算符
运算符
含义
=
等于
>
大于
>=
大于等于
<
小于
<=
小于等于
<>
不等于
(3).特殊比较运算符
between ... and ...
between A and B
判断要比较的值是否在范围
[A,B]内
A>B,则between A and B
表达式值为false
in
in
的功能类似于or
,判断某个/某些字段是否落在某个集合中
in
支持多列同时判断,但是仅支持子查询-- 单列判断 select from emp where mgr in(7902, 7566); -- 多列同时判断 select from emp where (job, mgr) in ('CLERK', 7902); -- 错误写法 select from emp where (job, mgr) in (select 'CLERK', 7902); -- 正确写法
like
like
运算符用于模糊查询。
%
匹配任意个字符、_
匹配单个字符concat(str1, str2, ...)
配合使用,这一点主要是便于配合后端程序的使用,比如Java[]
运算符,但是MySQL不支持。-- 查询姓名以S开头的员工 select * from emp where ename like 'S%'; -- 查询姓名包含S的员工 select * from emp where ename like '%S%'; select * from emp where ename like concat('%', 'S', '%'); -- Java中写法
is null
is null
用于空值判断,与其相反的是is not null
(4).逻辑运算符
not
、and
、or
not
常常和其他运算符组合使用,如not in
、not between
、not like
、is not null
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算