社区应用 最新帖子 精华区 社区服务 会员列表 统计排行 社区论坛任务 迷你宠物
  • 3292阅读
  • 0回复

SQL查询语句精华使用简要

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
一、 简单查询 .hz2&9Ow  
  简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。 oX|?:MS:  
O-GxUHwW r  
  例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 %Y',|+Arx  
nm):SEkC  
  SELECT nickname,email sd!sus|( R  
  FROM testtable dB)9K)  
  WHERE name='张三' %,?vyY  
#<#%>Y^  
  (一) 选择列表 ZgF/;8!~V-  
76MsrOv55  
  选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1_3?R }$Wl  
LZV}U*  
  1、选择所有列 /yK"t< p  
@36S}5Oa  
  例如,下面语句显示testtable表中所有列的数据: zh?4K*>.k  
v ($L  
  SELECT * BI/y<6#rR  
  FROM testtable gM, &Spn  
QMb^&?;s  
  2、选择部分列并指定它们的显示次序 5b fb!7-[i  
5c;En6W  
  查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 AN10U;p/O  
Mo|yv[(K ,  
  例如: jsWX 6(=  
YN^jm  
  SELECT nickname,email on5 0+)uN  
  FROM testtable J#@lV  
zPBfiK_hV  
  3、更改列标题 Xiju"Cup"  
gb_X?j%p7  
  在选择列表中,可重新指定列标题。定义格式为: ADBpX>  
41 'EA \V  
  列标题=列名 eBvW#Hzp  
  列名 列标题 }xJR.]).KW  
C1ZyB"{  
  如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: xMsGs  
)Pa*+ew7  
  SELECT 昵称=nickname,电子邮件=email ]wf |PU~nr  
  FROM testtable A\g%  
4、删除重复行 <ge}9pU)o^  
  SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 `]&*`9IK{  
s!`H  
  5、限制返回的行数 T9y768%  
5G oK"F0i  
  使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。 -mC:r&Y>[  
d#7]hF  
  例如: #S *pD?VZ  
d5' )6  
  SELECT TOP 2 * `vX4! @Tw  
  FROM testtable z"qv  
  SELECT TOP 20 PERCENT * >]?Jrs  
  FROM testtable oT!/J  
:p$EiR  
  (二)FROM子句 z5ZKks   
C2 .W[T  
  FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 jMqx   
F,.Q|.nN  
  在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: ,4yG(O$)  
w>vmF cp  
  SELECT username,citytable.cityid Zly-\ z_  
  FROM usertable,citytable 3FY_A(+  
  WHERE usertable.cityid=citytable.cityid qAORWc  
  在FROM子句中可用以下两种格式为表或视图指定别名: ,5kvn   
9b%|^ .B  
  表名 as 别名 [yvt1:q  
  表名 别名 Vku#;:yUb^  
Un\Ubqi0  
  (二) FROM子句 PS/W h  
-;<>tq'3`  
  FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 d}VALjXHX!  
T NIst  
  在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: |Z!@'YB  
:@;6  
  SELECT username,citytable.cityid uZ<%kV1B  
  FROM usertable,citytable , | <jjq)  
  WHERE usertable.cityid=citytable.cityid -[<vYxX:h:  
  在FROM子句中可用以下两种格式为表或视图指定别名: 6~3jn+K$1  
N+hedF@ZU  
  表名 as 别名 Mb~~A5  
  表名 别名 b_ZNI0Hp@  
  例如上面语句可用表的别名格式表示为: Seg#s.  
t#{x?cF  
  SELECT username,b.cityid *{Yi}d@h(  
  FROM usertable a,citytable b R @OSqEnr  
  WHERE a.cityid=b.cityid PJ0Jjoh"Y  
6."PS4}:  
  SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。 i<Q& D\Pv  
OMi02tSm  
  例如: mDlCt_h  
W0U`Kt&~a  
  SELECT a.au_fname+a.au_lname /t$*W\PL@  
  FROM authors a,titleauthor ta e6o/q)9#  
  (SELECT title_id,title hi0XVC95  
v10mDr  
  FROM titles (< :mM  
  WHERE ytd_sales>10000 D|[/>x  
  ) AS t rI *!"PL  
  WHERE a.au_id=ta.au_id 5'62ulwMP=  
  AND ta.title_id=t.title_id +R9%~Z.=  
  此例中,将SELECT返回的结果集合给予一别名t,然后再从中检索数据。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
描述
快速回复

您目前还是游客,请 登录注册
温馨提示:欢迎交流讨论,请勿纯表情、纯引用!
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八