SQL经典实例-检索表中检索列
1、检索全部列或者部分列
使用 SELECT 语句来查询表,并使用特殊字符 * 指定返回所有的列。字符 * 有特殊含义,它会返回指定表中所有的列。可以用逗号分隔,列出每一列
select * from 表
select 列1,列2 from 表
用*查询过程耗时,性能较低,不建议使用,如果数据量很多会造成内存溢出的现象。
2、使用别名
修改查询结果中显示的列名,可以使用过关键字as,使用关键字 AS 给查询返回的列指定新名称的行为被称为指定别名,而指定的新名称被称为别名。
select sal as salary, comm as commission
from emp
3、在WHERE子句中使用别名来引用列
在查询列的时候已经使用过别名,想where作为条件筛选的时候使用别名sql特殊字符,告诉你会报错
select 列1 as a
from emp
where a < 5000
解决的办法用嵌套子查询
select * from
(select 列1 as a
from 表)
where a < 5000
4、拼接列值
将a列文本与b列文本拼接到一起
在MySQL中用concat函数
1 select concat(列1, '文本',列2) as 列3
2 from emp
3
5、用case进行条件逻辑判断
CASE 表达式能够根据查询返回的值来执行条件逻辑
语法如下
语法1: case 表达式 when 值1 then 结果1 when 值2 then 结果2 …..else 结果n end
语法2:case when 表达式1 then 结果1 when 表达式1 then 结果2 …..else 结果n end
1 select ename,sal,
2 case when sal <= 2000 then 'UNDERPAID'
3 when sal >= 4000 then 'OVERPAID'
4 else 'OK'
5 end as status
6 from emp
还有一种逻辑判断是if,感兴趣的同学可以学习一下
表中检索行
1、检索部分条件行
如果想检索满足表中特定的行可以使用 WHERE 子句来指定要返回哪些行,只要满足WHERE 子句中表达式指定的条件,就会检索出来。
支持常用的运算符,比如 =、、=、! 和 。另外,你可能想返回满足多个条件的行,为此可以使用 AND、OR 和圆括号
select * from 表 where 列1 = 10
2、查找满足多个条件的行
结合使用 WHERE 子句、OR 子句和 AND 子句
select * from 表
where 列1 = 10
or 列2 is not null
or 列2 <= 2000 and 列2=20
3、限制返回行数
在mysql中用limit来限制返回的行数
select *
from 表 limit 5 # 前五行
4、随机返回n行数据
从表中随机返回5行数据,这5行数据没有顺序上的规律
在MYSQL中用rand函数
select 列1
from 表
order by rand() limit 5
order by后面通常是列,可以对列进行升序或者降序排列sql特殊字符,如果后面接的是函数,要求对每行执行该函数,并根据函数的结果进行排序。
5、模糊查找like
使用 LIKE 运算符和 SQL 通配符(%或者_)可以实现模糊查找
% 表示匹配一个或多个任意字符
_ 表示匹配一个任意字符
select * from student where like '%王'#查询王结尾的
select * from student where like '%王%'#查询包含王的
select * from student where like '王_'#查询王某的
select * from student where like '王__'#查询王某某的
———END———
限 时 特 惠:本站每日持续更新海量各大内部创业教程,一年会员只需128元,全站资源免费下载点击查看详情
站 长 微 信:jiumai99