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

SQL查询语句精华使用简要

级别: 终身会员
发帖
3743
铜板
8
人品值
493
贡献值
9
交易币
0
好评度
3746
信誉值
0
金币
0
所在楼道
一、 简单查询 YDZB$?&a  
  简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。 It VVI"-  
rCb$^(w{7  
  例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 (!?%"e  
3HNm`b8G4m  
  SELECT nickname,email 4sfq,shRq  
  FROM testtable Pb1.X9*8c  
  WHERE name='张三' EztuVe  
k2.\1}\  
  (一) 选择列表 C>F5=&  
1(Z+n,Hh  
  选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 F=PBEaX  
QIdml*Np?H  
  1、选择所有列 %$bhg&}  
Ft}nG&D  
  例如,下面语句显示testtable表中所有列的数据: ,zdK%V}  
@:@5BCs<  
  SELECT * CYsLyk  
  FROM testtable %s;5  
s2F[v:|Wq  
  2、选择部分列并指定它们的显示次序 /XNC^!z6Js  
-S&d5(R  
  查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 Zqv  
yTNHM_P  
  例如: IsVR4t]  
YS<KyTb"  
  SELECT nickname,email }9N-2]  
  FROM testtable uZ+"-Ig  
|QQ(1#d  
  3、更改列标题 mR|']^!SE  
Y1F%-o  
  在选择列表中,可重新指定列标题。定义格式为: XsSDz}dg  
 Y=H_U$  
  列标题=列名 .bRtK+}F#  
  列名 列标题 E 0OHl  
-Vs;4-B{9  
  如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: =>&~p\Aw  
:*R+ee,& -  
  SELECT 昵称=nickname,电子邮件=email A+}O~,mxP8  
  FROM testtable o#D'"Tn!  
4、删除重复行 ,#9i=gp  
  SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 +i}uRO  
IR&b2FTcU  
  5、限制返回的行数 6BZi4:PDx  
7#*`7 K'P!  
  使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。 #KuBEHr  
:bCswgd[  
  例如: T hVq5  
&V%faa1  
  SELECT TOP 2 * z uo:yaO  
  FROM testtable  B`vC>  
  SELECT TOP 20 PERCENT * @PK 1  
  FROM testtable 3ly ]DTbz  
>u|4490<0  
  (二)FROM子句 Gz--C(  
{cjp8W8hS  
  FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 ?B`c <H"  
.3wx}!:*|  
  在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: .3SP# mI  
! GtF%V  
  SELECT username,citytable.cityid -I z,vd  
  FROM usertable,citytable :c(I-xif  
  WHERE usertable.cityid=citytable.cityid dsK*YY jH  
  在FROM子句中可用以下两种格式为表或视图指定别名: ]4'V59\  
q4vHsy36  
  表名 as 别名 f1B t6|W%  
  表名 别名 dIA1\;@  
[(vV45(E  
  (二) FROM子句 NFG~PZ`6R  
X@/wsW(kM\  
  FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 q9\(<<f|  
:3b\pEO9\  
  在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: ]w]:9w  
Ax9A-|  
  SELECT username,citytable.cityid 1M?Sl?+j  
  FROM usertable,citytable gQeoCBCE  
  WHERE usertable.cityid=citytable.cityid dV^ck+  
  在FROM子句中可用以下两种格式为表或视图指定别名: j*~z.Q|  
oHF,k  
  表名 as 别名 4F!%mMq  
  表名 别名 [vnxp/v/<  
  例如上面语句可用表的别名格式表示为: |-%dN }O  
yb\!4ml  
  SELECT username,b.cityid ,o0[^-b<  
  FROM usertable a,citytable b s -F3(mc(  
  WHERE a.cityid=b.cityid -AQ 7Bd  
M(ie1Ju  
  SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。 d7Z$/ $  
I]Z"?T  
  例如: ' R= OeH  
M{=p0?X  
  SELECT a.au_fname+a.au_lname _+Uf5,.5yU  
  FROM authors a,titleauthor ta {>Qs+]  
  (SELECT title_id,title Bi0&F1ZC!  
vCtnjWGX}/  
  FROM titles \.F|c  
  WHERE ytd_sales>10000 1R]h>'  
  ) AS t q1A0-W#4  
  WHERE a.au_id=ta.au_id bOr6"nn  
  AND ta.title_id=t.title_id hy3?.  
  此例中,将SELECT返回的结果集合给予一别名t,然后再从中检索数据。
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
描述
快速回复

您目前还是游客,请 登录注册
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
认证码:
验证问题:
3+5=?,请输入中文答案:八 正确答案:八