好运物流网-全国领先的物流网   好运物流网-登录  好运物流网-免费注册 进入我的后台 首页 | 发布信息 | 服务项目 | 物流百科
物流查询|物流公司|中国物流信息网-好运物流网
 
你正在查看的信息:资讯首页->资讯频道->IT编程技术->正文

Oracle中select 1和select *有什么区别?

更新时间:2022/4/23 16:53    出处:互联网
已经浏览
4162
创建myt表并插入数据,如下:

create table myt(name varchar2,create_time date)

 insert into myt values('john',to_date(sysdate,'DD-MON-YY'));

 insert into myt values('tom',to_date(sysdate,'DD-MON-YY'));

 insert into myt values('lili',to_date(sysdate,'DD-MON-YY')); 

 在sql*plus中显示如下:

SQL> select * from myt;
 
NAME       CREATE_TIME
---------- -----------
john       2010-5-19
tom        2010-5-19
lili       2010-5-19
 
SQL> select 1 from myt;
 
         1
----------
         1
         1
         1

SQL> select 0 from myt;
 
         0
----------
         0
         0
         0
从以上结果 可以看到,select constant fromtable 对所有行返回对应的常量值(具体应用见下面),

而select * from table则返回所有行对应的所有列。

select 1常用在exists子句中,检测符合条件记录是否存在。

如select * from T1 where exists(select 1 from T2 where T1.a=T2.a) ;
T1数据量小而T2数据量非常大时,T1<<T2 时,1) 的查询效率高。
“select 1”这里的 “1”其实是无关紧要的,换成“*”也没问题,www.linuxidc.com它只在乎括号里的数据能不能查找出来,是否存在这样的记录,如果存在where 条件成立。
如下示例:

SQL> select 1/0 from dual;
 
select 1/0 from dual
 
ORA-01476: 除数为 0

SQL> select * from myt where  exists(select 1/0 from dual);
 
NAME       CREATE_TIME
---------- -----------
john       2010-5-19
tom        2010-5-19
lili       2010-5-19

没有返回错误,说明,并没有让select语句参与计算。

在exists子句中写select *并不返回表中所有的列,只是检测符合条件记录是否存在。
还可以看看其他文章,谢谢您的阅读。
网站申明:系本文编辑转载,来源于网络,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,所有权归属原作者。如内容、图片有任何版权问题,请联系我们删除
上一篇:MYSQL中按照季度、月份等分组的SQL语句怎么写? 下一篇:jQuery中attr和prop方法的区别,checkbox的使用总结,判断是否选中
更多相关的物流文章
IT编程技术  互联网  2023-10-07  浏览:6377次
IT编程技术  互联网  2022-11-24  浏览:9594次
IT编程技术  互联网  2022-11-17  浏览:10013次
IT编程技术  互联网  2022-11-17  浏览:9614次
IT编程技术  互联网  2022-11-14  浏览:9431次
IT编程技术  互联网  2022-11-06  浏览:9771次
IT编程技术  互联网  2022-11-05  浏览:9312次
IT编程技术  互联网  2022-10-28  浏览:10045次
正在被浏览的文章
【IT编程技术】热点文章
“扫一扫”微信公众号
好运物流网公众号二维码
关于好运物流网 - 联系好运网 - 物流公司查询 - 物流知道 - 帮助中心 - 网站地图
温馨提示:防范支招 安全警示:货运合作要有安全意识,需当面核实对方真实身份,要签订合同/协议、提供身份证等(防范支招)
免责声明:本站只起到物流信息平台作用,内容的准确性以及物流过程中出现的任何风险均由发布者负责,与平台无关。
好运物流网(haoyun56.com)  备案号:浙ICP备10210792号-4

浙公网安备 33080202000006号