一、简单查询 8UY=}R2C
EwBN+v;)
简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 X!A]V:8dk
$CYpO}u#
表或视图、以及搜索条件等。 rj f=qh5s
';CuJXAj
例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 '?>O
{'Qk>G
s
SELECT nickname,email AL$Ty
2Q'XB
FROM testtable P)j9\ muc
wj:3
WHERE name='张三' O> ^~SO
V-U
^O45
(一)选择列表 4l!Yop0h
W;}u 2GH
选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变 {hq ;7
r-Xe<|w
量和全局变量)等构成。 {S:3
FI
o/[yA3^
1、选择所有列 8cPf0p:
_wJ#jJz2
例如,下面语句显示testtable表中所有列的数据: =28H^rK{
A_*Lo6uII
SELECT *
#LyjJmQ
]4Yb$e`
FROM testtable 3R[J,go
:-@P3F[0
2、选择部分列并指定它们的显示次序 xjk|O;ak
j#>![km Mu
查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 whZ],R*u
|
xI_aYv*
例如: WHavz0knf[
WuZn|j'
SELECT nickname,email JP*wi-8D
+/lj~5:y
FROM testtable 8jGoU9
SK}g(X7IWH
3、更改列标题 0Lz56e'j
2Xs < 1rF
在选择列表中,可重新指定列标题。定义格式为: R/xCS.yl}
Uk ;.Hrt.
列标题=列名 g
UAPjR
CIvT5^}
列名 列标题 (gC^5&11
aNU%OeQA
如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 _7HJ'
1L
qJ@v0
标题: s/0FSv
x
|Qm%G\oB?
SELECT 昵称=nickname,电子邮件=email 7TY"{?~O5
,lYU#Hx*
FROM testtable VOOThdR
'=Y~Ir+
4、删除重复行 `;2`H, G'
B&j+fi
SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 YVp0}m
!7*/lG
为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 1c~#]6[
boB{Y 7gO4
5、限制返回的行数 ;| ,Y2?
4c@F.I
使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 %b4(wn?n:B
6x8|v7cMH
表示一百分数,指定返回的行数等于总行数的百分之几。 T )]|o+G
[+7X&B
例如: L(S.
dj**,*s
SELECT TOP 2 * DTVnQC
Oip..f0
FROM testtable t4f\0`jN
gcF><i6
SELECT TOP 20 PERCENT * bZfJG^3
>9|+F[Fc
FROM testtable Bn:sN_N
?V&a |:N9
(二)FROM子句 J/2pS
{Vu:yh\<
FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, <N&