<,sql语句中的1代表什么意思?查出来是个什么结
果?
select 1 from ..., sql语句中的1代表什么意思?查出来是个什么结果?
select 1 from table;与select anycol(⽬的表集合中的任意⼀⾏) from table;与select * from table 从作⽤上来说是没有差别的,都是查看是否有记录,⼀般是作条件查询⽤的。select 1 from 中的1是⼀常量(可以为任意数值),查到的所有⾏的值都是它,但从效率上来说,1>anycol>*,因为不⽤查字典表。
测试场景:(转⾃⽹络⽂献)
table表是⼀个数据表,假设表的⾏数为10⾏。
1:select 1 from table 增加临时列,每⾏的列值是写在select后的数,这条sql语句中是1
2:select count(1) from table 管count(a)的a值如何变化,得出的值总是table表的⾏数
3:select sum(1) from table 计算临时列的和
在SQL SERVER中⽤ 1 测试了⼀下,发现结果如下:
1:测试结果,得出⼀个⾏数和table表⾏数⼀样的临时列(暂且这么叫,我也不知道该叫什么),每⾏的列值是1;
2:得出⼀个数,该数是table表的⾏数;
3:得出⼀个数,该数是table表的⾏数;
然后我⼜⽤“2”测试,结果如下:
1:得出⼀个⾏数和table表⾏数⼀样的临时列,每⾏的列值是2;
2:得出⼀个数,该数是table表的⾏数;
3:得出⼀个数,该数是table表的⾏数×2的数
然后我⼜⽤更⼤的数测试:
1:得出⼀个⾏数和table表⾏数⼀样的临时列,每⾏的列值是我写在select后的数;
2:还是得出⼀个数,该数是table表的⾏数;
3:得出⼀个数,该数是table表的⾏数×写在select后的数
综上所述:第⼀种的写法是增加临时列,每⾏的列值是写在select后的数;第⼆种是不管count(a)的a值如何变化,得出的值总是table表的⾏数;第三种是计算临时列的和。
sql软件长什么样语句if not exists(select 1 from deleted d join inserted i on d.ID=i.ID
l1=1 l1=2)
if not exists 如果不存在
(..)这⾥该是验证更新,更新前的id等于更新后的id,并且更新前col的值是1,更新后的值是2
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论