我在调试程序时遇到了'SELECT 1 FROM TABLE_NAME'
或'SELECT 2 FROM TABLE_NAME'
等SQL查询。我很好奇查询中的数字以及它返回的结果集。
由于
答案 0 :(得分:5)
它将返回一个数字为值的列,n行,n是select中返回的行数。
这在
等情况下很有用SELECT *
FROM YourTable yt
WHERE EXISTS(
SELECT 1
FROM SomeOtherTable sot
WHERE yt.ID = sot.ID
)
上的好文章
答案 1 :(得分:1)
从your_table中选择1 - >执行时,your_table中的每一行都会得到值1。
'选择*'和'选择1或2'在没有EXIST条件的情况下执行时具有相同的性能。我个人的选择是在有条件检查现有行时使用“选择1或2”,因为它稍微快一点,例如。查询VIEWS或具有数百万行和很多列的临时表时。