通用SQL数据库的查询语句(2)

 

发布时间:2008.01.04 04:40     来源:赛迪网    作者:20933

 

 

 

 

 

4、删除重复行

 

SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。

 

5、限制返回的行数

 

使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。

 

例如:   SELECT   TOP   2   *FROM   testtable   SELECT   
TOP   20   PERCENT   *   FROM   testtable

 

 

 

 

(二)FROM子句

FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。

 

在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定:

 

SELECT   username,citytable.cityid 

FROM   usertable,citytable 

WHERE   usertable.cityid=citytable.cityid

 

 

 

 

在FROM子句中可用以下两种格式为表或视图指定别名:

 

表名 as 别名

 

表名 别名

 

例如上面语句可用表的别名格式表示为:

 

SELECT   username,b.cityid 

FROM   usertable   a,citytable   b 

WHERE   a.cityid=b.cityid

 

 

 

 

SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。

 

例如:   SELECT   a.au_fname+a.au_lname 

FROM   authors   a,titleauthor   ta 

(SELECT   title_id,title 

FROM   titles 

WHERE   ytd_sales> 10000 

)   AS   t 

WHERE   a.au_id=ta.au_id 

AND   ta.title_id=t.title_id

 

 

 

此例中,将SELECT返回的结果集合给予一别名t,然后再从中检索数据。

(三) 使用WHERE子句设置查询条件

 

WHERE子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据:

 

SELECT   * 

FROM   usertable 

WHERE   age> 20

 

 

 

 

WHERE子句可包括各种条件运算符:

 

比较运算符(大小比较):> 、> =、=、 <、 <=、 <> 、!> 、! <

 

范围运算符(表达式值是否在指定的范围):BETWEEN…AND…

 

NOT BETWEEN…AND…

 

列表运算符(判断表达式是否为列表中的指定项):IN (项1,项2……)

 

NOT IN (项1,项2……)

 

模式匹配符(判断值是否与指定的字符通配格式相符):LIKE、NOT LIKE

 

空值判断符(判断表达式是否为空):IS NULL、NOT IS NULL

 

逻辑运算符(用于多条件的逻辑连接):NOT、AND、OR

你可能感兴趣的:(通用SQL数据库的查询语句(2))