SELECT语句中的数字

时间:2010-12-21 06:40:52

标签: mysql

我在调试程序时遇到了'SELECT 1 FROM TABLE_NAME''SELECT 2 FROM TABLE_NAME'等SQL查询。我很好奇查询中的数字以及它返回的结果集。

由于

2 个答案:

答案 0 :(得分:5)

它将返回一个数字为值的列,n行,n是select中返回的行数。

这在

等情况下很有用
SELECT *
FROM YourTable yt
WHERE EXISTS(
    SELECT 1
    FROM SomeOtherTable sot
    WHERE yt.ID = sot.ID
    )

另外,SELECT 1 vs SELECT * – An Interesting Observation

上的好文章

答案 1 :(得分:1)

从your_table中选择1 - >执行时,your_table中的每一行都会得到值1。

'选择*'和'选择1或2'在没有EXIST条件的情况下执行时具有相同的性能。我个人的选择是在有条件检查现有行时使用“选择1或2”,因为它稍微快一点,例如。查询VIEWS或具有数百万行和很多列的临时表时。