所有的问题都一样吗?我看不出结果有什么不同,它只是根据我们的选择更改表行中的数字。但是,为什么我们总是使用1。它有什么技术意义和优势吗?
最佳答案
像SELECT <Something> FROM Tablename
这样的查询选择每行something
。
如果这个tablename
不是表的一列,我们只是想避免表上的计算,我们使用一个像something
或1
这样的数字,或者任何可以在不进行计算的情况下每行返回的值。他们都一样。
甚至像这样
SELECT 'I am doing good' FROM tablename
一些聪明的开发人员选择返回一个标量值,该值对于查询的其他部分(如say)很有用
IF EXISTS( SELECT 1 FROM Issue_Log)
BEGIN
PRINT 'HAVE MORE WORK'
END
在上面的示例中,我们只是检查
2
表中是否有任何行。我们只需从select查询返回1。如果没有行,我们就不会得到任何数字1作为结果,因此Issue_Log
被计算为false。欢迎来到SQL世界。