一、简单查询 .H;B=nd*
\|+/0USn
简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 M<oA<#IW
B?(4f2yE
表或视图、以及搜索条件等。 ,{<Fz%
ToU.mM?f^
例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 #8?^C]*{0
!t-K<'
SELECT nickname,email vl5){@
sd!sus|( R
FROM testtable H-&3}
zl)&U=4l
WHERE name='张三' k=uZ=tUft*
sv=^k(d3
(一)选择列表 B_~jA%0m'
TA)LPBG
选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变 k^*$^;z
yh!B!v'
量和全局变量)等构成。 ks:{TA27
05)|"EX)
1、选择所有列 e[4V%h
Yo'K pdn
例如,下面语句显示testtable表中所有列的数据: >h7$v~nra
T&/_e
SELECT * VK4/82@5
8ui=2k(
FROM testtable TG]}X\c+V|
S:Xs'0K_
2、选择部分列并指定它们的显示次序 (Jpm
K O
aL)Hv k:
查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 jsWX 6(=
YN^jm
例如: on50+)uN
J#@lV
SELECT nickname,email d pn3 (
"^"'uO$
FROM testtable csvOg[
F@<MT<TRf
3、更改列标题 X%`KYo%
Xu%d,T$G
在选择列表中,可重新指定列标题。定义格式为: AfE%a-;:
b7v dk
列标题=列名 G+C}<S}
n_;S2KM
列名 列标题 ,aO@.<"
y< ud('D
如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 Bm<^rhJ9
9l l|JeNi
标题: 'a_s%{BJXg
qb$_xIQpDL
SELECT 昵称=nickname,电子邮件=email ^H'kHl'F
A^vvST%7
FROM testtable u*k*yWdr
3{q[q#"
4、删除重复行 `oPLl0
v>:=w|.HC
SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 [a+4gy
L5C2ng>
为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 w .l|G,%=
}{=8&gA0
5、限制返回的行数 ` U#Po_hq
WVkG2
使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 %^U"Spv;
fp-m.d:|
表示一百分数,指定返回的行数等于总行数的百分之几。 I4ctxMVP
Wx k;g
例如: *#GDi'0
ex0oAt^
SELECT TOP 2 * &q L<C
Z fqQ{_
FROM testtable ' 3VqkQ4
.t:DvB
SELECT TOP 20 PERCENT * $2is3;h
\
%_)_"Q
FROM testtable >F|qb*Tm7
d/4ubf+$k
(二)FROM子句 Ff&R0v
F7V6-V{_
FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, 26}u4W$
FdM<;}6T
它们之间用逗号分隔。 g~|y$T
R9q0,yQW
在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 59~FpjJ
)1K! [W}t
所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应 mCK],TOA:
Mb~~A5
使用下面语句格式加以限定: D2Vv\f
pd7O`.3
SELECT username,citytable.cityid Ri[S<GOMii
e@yx}:]h
FROM usertable,citytable )5'rw<:="
]*a@*0=
WHERE usertable.cityid=citytable.cityid ,b4~!V
MyqiBGTb
在FROM子句中可用以下两种格式为表或视图指定别名: [xWEf#', !
i#tbdx#
表名 as 别名 \d ui`F"Cc
unJiE!
表名 别名 f!EOYowW
avVmY|I
例如上面语句可用表的别名格式表示为: wn{]#n=|l
InP[yFV-z
SELECT username,b.cityid ,Q+\h>I
_~:j3=1&