006.SQL TOP 子句,LIKE 操作符,通配符,IN 操作符,BETWEEN 操作符
TOP 子句 用于规定要返回的记录的数目;
对应拥有数千条数据的大型表来说,是非常有用的;
注意:并非所有的数据库系统都支持,select top 语句。
MySQL支持Limit语句来指定的条目数据,Oracle可以使用Rownum来选取;
SQL server / Ms Access语法
select Top number | percent column_name(s)
from table_name
number = 数
percent = 百分比
实例
select top 5 *
from test_tables
or
SELECT TOP 50 PERCENT * FROM peremployee
人事档案表中取50%的记录;
Like 操作符 用于在where 子句中搜索列中的指定模式;
Like 语法
select column_name
from table
where column_name like pattern
pattern = 指定模式;
实例
用语句选取name以字母“K”开始的所有数据;
select * from table
where name like 'K%'
提示:%符号用于模式的前后定义通配符(默认字母)。
选取以“K”结尾的所有数据
select * from table
where name like '%K'
选取数据中包含“K”的数据;
select * from table
where name like '%K%'
通过NOT 关键字,选取不匹配模式的记录。
LIke NOT '%'
select * from table
where name not like '%K%'
通配符 可用于代替字符串中的任何字符;
在SQL中,通配符与Like一起使用;
通配符用于搜索表中的数据。
% 代替0个或多个字符;
_ 代替一个字符;
[charlist] 字符列中的任意单一字符;
[^charlist] or [!charlist] 不存在字符列中的任何单一字符;
[character-character]通配符:指定范围内的任何单个字符。
(1)列如寻找姓赵或者姓李的人
[李赵]表示单个字符,为[]中的字符之一
(2)寻找范围的方括号,列如[a-d]表示单个字符的范围为 a-d。列寻找第一个字母为a-d之间的编号
[^]通配符:不在列表或范围内的任何单个字符。
(1)列如查出除了abc之外的所有编码
加上^通配符后即取相反
*注意使用LIKE模糊查询默认是不区分大小写的
*使用通配符LIKE比等于(=)和不等于(!=)比较更灵活
IN 操作符 允许你在where子句中规定多个值;
in 语法
select column_name
from table
where column_name in (value1,value2, ...)
实例 选取所有name为“K”和“X”的数据
select * form table
where name in (‘K’,‘X’)
IN 可以使用 Not IN()
Between 操作符 选取介于两个值质检的数据范围内的值,这些值可以是数值,文本或日期;
between 语法
select column_name
from table
where column_name between value1 and value2
实例 选取 x 介于1和20之间的数据;
select * from table
where x between 1 and 20
同样的,between 可以使用 Not between
实例 选取 x 不介于1和20之间的数据;
select * from table
where x not between 1 and 20
请注意,在不同的数据库中,BETWEEN 操作符会产生不同的结果!
在某些数据库中,BETWEEN 选取介于两个值之间但不包括两个测试值的字段。
在某些数据库中,BETWEEN 选取介于两个值之间且包括两个测试值的字段。
在某些数据库中,BETWEEN 选取介于两个值之间且包括第一个测试值但不包括最后一个测试值的字段。
因此,请检查您的数据库是如何处理 BETWEEN 操作符!
数据来源于网络,
仅供于个人学习,
若侵权联系删除。