select 1 from table

转载 2015年07月09日 16:07:03

一、http://www.cnblogs.com/weiwcn/archive/2008/03/24/1120079.html

今天看到项目代码里有这条语句,不懂select 1 from XXXXXXX里的1是何意,查了一番才知道:

1、select 1 from mytable;与select anycol(目的表集合中的任意一行) from mytable;与select * from mytable 作用上来说是没有差别的,都是查看是否有记录,一般是作条件用的。select 1 from 中的1是一常量,查到的所有行的值都是它,但从效率上来说,1>anycol>*,因为不用查字典表。

2、查看记录条数可以用select sum(1) from mytable;等价于select sum(*) from mytable;

3、实际项目SQL:

select c_insrnc_cde, c_nme_cn
   from t_prd_ins a
where a.c_prod_no = '01'
    and not exists
(select 1
           from (select d.c_insrnc_cde, a.c_nme_cn
                   from t_prd_ins                   a,
                        tb_bas_ply_policy_rdr       c,
                        tb_bas_ply_policy_rdr_list d
                  where a.c_insrnc_cde = d.c_insrnc_cde
                    and d.c_policy_id = c.c_policy_id
                    and d.c_seq_no = c.c_seq_no
                    and a.c_kind_no = '01'
                    and c.c_dpt_cde = '101'   ----机构树中取出机构
                    and c.c_prod_no = '01'
                    and c.t_effc_tm <= TO_DATE('2007-9-5', 'YYYY-MM-DD')
                    and c.t_expd_tm >= TO_DATE('2007-9-5', 'YYYY-MM-DD')
                    and c.c_work_mode = '00501'
                    and c.c_reach_area = '00701'
                    ) t
          where t.c_insrnc_cde = a.c_insrnc_cde);

 二、http://blog.csdn.net/wangyihust/archive/2009/02/05/3863758.aspx

测试场景:(转自网络文献)
table表是一个数据表,假设表的行数为10行。

1:select  1 from table       增加临时列,每行的列值是写在select后的数,这条sql语句中是1

2:select count(1)  from table   不管count(a)的a值如何变化,得出的值总是table表的行数

select 1 from table 语句中的1代表什么意思

在这里我主要讨论的有以下几个select 语句: doo_archive表是一个数据表,表的行数为4行,以下同。 1:select  1 from doo_archive 2:select count...
  • u010104750
  • u010104750
  • 2016年04月13日 11:05
  • 9584

select 1 from ... sql语句中的1代表什么意思?

select  1 from ..., sql语句中的1代表什么意思?查出来是个什么结果?         select 1 from table;与select anycol(目的表集...
  • wozengcong
  • wozengcong
  • 2015年09月05日 13:11
  • 8439

慎用create table as select,一定要注意默认值的问题

慎用create table as select,一定要注意默认值的问题 博客分类:  Oracle oraclecreate talbe as select数据库迁移  再做一些数据迁移...
  • haiross
  • haiross
  • 2013年11月28日 10:44
  • 83698

select 1 from table

select 1 from table 与Select * from table在用法上大同小异,具体不同分析见下文: select 1 from table;与select anycol(目的表集合...
  • u011983531
  • u011983531
  • 2016年03月07日 11:52
  • 305

数据库语句 select * from table where 1=1 的用法和作用

我们先来看看这个语句的结果:select * from table where 1=1,其中where 1=1,由于1=1永远是成立的,返回TRUE,条件为真;所以,这条语句,就相当于select *...
  • Smile_yingying
  • Smile_yingying
  • 2014年09月23日 13:41
  • 1610

select * from table where 1=1

众多网站都有select * from table where 1=1此类语句的介绍,并且,针对该类语句,讲得实在是让人越看越迷茫(一个抄袭一个的,简直不像话),不知道是在说什么,导致很多新手不得要...
  • jihuanliang
  • jihuanliang
  • 2012年03月21日 17:49
  • 2779

数据库语句 select * from table where 1=1 的用法和作用

数据库语句 select * from table where 1=1 的用法和作用 我们先来看看这个语句的结果:select * from table where 1=1,其中...
  • xiaoxionghome
  • xiaoxionghome
  • 2013年11月05日 23:08
  • 632

select 1 from table 语句中的1代表什么意思

在这里我主要讨论的有以下几个select 语句: doo_archive表是一个数据表,表的行数为4行,以下同。 1:select  1 from doo_archive 2:select count...
  • u010104750
  • u010104750
  • 2016年04月13日 11:05
  • 9584

数据库语句 select * from table where 1=1 的用法和作用

我们先来看看这个语句的结果:select * from table where 1=1,其中where 1=1,由于1=1永远是成立的,返回TRUE,条件为真;所以,这条语句,就相当于select *...
  • leo1949asd
  • leo1949asd
  • 2015年06月12日 13:43
  • 520

请教Table()使用方法 select * from table(....)

请教Table()使用方法 select * from table(....) http://www.itpub.net/thread-276171-1-1.html http://asktom....
  • orion61
  • orion61
  • 2012年04月01日 13:27
  • 5602
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:select 1 from table
举报原因:
原因补充:

(最多只允许输入30个字)