[color=red]select 1 from ..., sql语句中的1代表什么意思?查出来是个什么结果?[/color]
select 1 from table;与select anycol(目的表集合中的任意一行) from table;与select * from table 从作用上来说是没有差别的,都是查看是否有记录,一般是作条件查询用的。select 1 from 中的1是一常量(可以为任意数值),查到的所有行的值都是它,但从效率上来说,1>anycol>*,因为不用查字典表。
测试场景:(转自网络文献)
table表是一个数据表,假设表的行数为10行。
1:select 1 from table [color=red] 增加临时列[/color],每行的列值是写在select后的数,这条sql语句中是1
2:select count(1) from table 管count(a)的a值如何变化,[color=red]得出的值总是table表的行数[/color]
3:select sum(1) from table [color=red]计算临时列的和[/color]
select 1 from table;与select anycol(目的表集合中的任意一行) from table;与select * from table 从作用上来说是没有差别的,都是查看是否有记录,一般是作条件查询用的。select 1 from 中的1是一常量(可以为任意数值),查到的所有行的值都是它,但从效率上来说,1>anycol>*,因为不用查字典表。
测试场景:(转自网络文献)
table表是一个数据表,假设表的行数为10行。
1:select 1 from table [color=red] 增加临时列[/color],每行的列值是写在select后的数,这条sql语句中是1
2:select count(1) from table 管count(a)的a值如何变化,[color=red]得出的值总是table表的行数[/color]
3:select sum(1) from table [color=red]计算临时列的和[/color]