Q: select top 1 1 from ... 是什么意思?
A: 这个是SQLSERVER选择表中符合条件的前N行记录的语句。
不过,TOP后边跟的一定是一个数字,你这个1 1,中间空了一个格,不是11,也不是1,那就分开看,SELECT TOP 1这是一段,选择第一行,第一行什么,第一行的1,就是说如果符合条件,WHERE条件,查询有数据,就会查到一行1,否则,没有结果。
我们常理解的是SELECT * FROM TABLE,这个是选择表TABLE中所有的数据。
那么SELECT 1 FROM TABLE,这个语句也是成立的,只不过根据表中的行数,每一行都是1。
|
(No column name) |
1 |
1 |
2 |
1 |
3 |
1 |
4 |
1 |
SELECT TOP 1 * FROM TABLE,这个是选TABLE的第一行记录。
Account_id |
Attribute_id |
Class |
Val |
CreateDate |
CreateEmployee_id |
ModDate |
ModEmployee_id |
10 |
123 |
PRIMARY |
300 |
2010-04-05 19:55:20.720 |
-1 |
NULL |
NULL |
SELECT TOP 1 1 FROM TABLE,那就是借用这个TABLE的行,把列换成了固定值1
|
(No column name) |
1 |
1 |
From: