select1from是什么意思?有什么作⽤?
⼀、select 1 from 的作⽤
1、select 1 from mytable 与 select anycol(⽬的表集合中的任意⼀⾏)from mytable、select * from mytable 作⽤上来说是没有差别的,都是查看是否有记录。--虽然说没有区别,但还是好奇到底为什么⽤select 1 from
2、select 1 from 中的1是⼀常量,查到的所有⾏的值都是它,但从效率上来说,1>anycol>*,因为不⽤查字典表。--这⾥所说的查到满⾜筛选条件的记录,会⽣成⼀个临时列,⽽且值是1,这⾥有个性能点,就是执⾏效率1>anycol>*,执⾏效率是最快的;有数据就返回1,没数据返回null
3、查看记录条数可以⽤select sum(1) from mytable;等价于select sum(*) from mytable。
4、例如select top 1 1 from mytable ⽤来判断表是否有记录,如有记录则显⽰⼀个 1,没有则不显⽰。
⼆、什么时候适⽤?
tabletime是什么意思⼀般⽤来当做判断⼦查询是否成功(即是否有满⾜条件的时候使⽤),常⽤于exists,⼦查询中,
⽐如
select * from ta where exists (select 1 from ta.id = tb.id)
这个判断就是(select 1 from ta.id = tb.id)这个查询如果有返回值的话表⽰当前查询满⾜条件,⼀般来说就简单话的⽤select 1
这种查询写法,在性能调优的时候,可能会经常⽤到,执⾏效率⽐较快。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论