每日一学: sql语言高级(一)

165 阅读1分钟

查询条数限制

不同的数据库,有着不同实现方式. 此处需要区分一下 虽然差别不大,但是没有统一的规范,也是不合适的.但是没有办法 这个特性可以用来分页,无所手动分页.

sql-serve中 支持TOP 支持数据和百分比 后面接列名
SELECT TOP number|percent column_name(s)
FROM table_name;

mysql 中使用limit 
SELECT column_name(s) FROM table_name LIMIT number;

Oracle 中使用ROWNUM
SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

模糊查询:like

在where子句中 进行模糊条件筛选

SELECT * FROM Websites  
WHERE name LIKE 'G%';

其中百分号是通配符. G%: 表示以G开头 %G: 表示以G结尾 %oo%: 表示中间包含oo not like '%G' :不以G结尾

通配符

这些前面用 like %: 表示0 个或多个任意字符

_: 表示任意一个字符

后面用REGEXP方式,使用正则的方式去匹配. REGEXP '^[GFs]' REGEXP '^[!A-H]' 或者'^[^A-H]'

查询某个列的多个值

在where子句中, 列名 in (1,2,3,4,5) 可能的值.

SELECT column1, column2, ...
FROM table_name
WHERE column IN (value1, value2, ...);

查询某个列的值在两个数之间

在某个值之间: between xx and xx

SELECT column1, column2
FROM table_name
WHERE column BETWEEN value1 AND value2;

表列别名:

很简单,就是列名或者表名的 后面接上 as

给列取别名
select column1 as huangxi from table_name

给表正题取别名
select column1 as huangxi from table_name as haungxi_table

下一节: 连接多表,多表操作.