Oracle--select使用别名

来源:互联网 发布:蔡依林 整容 知乎 编辑:程序博客网 时间:2024/05/22 05:04
一. select使用别名的三种方式:
1 将字段用as转换成别名
eg:
SQL> select name as xingxing from test1;
 
XINGXING
--------------------
张学友
xingxing
田月超
田月星
yuechaotian
李连杰
 
已选择6行。
2 直接在字段的名字后面跟别名
eg:
SQL> select name xingxing from test1;
 
XINGXING
--------------------
张学友
xingxing
田月超
田月星
yuechaotian
李连杰
 
已选择6行。
3 字段后面+用双引号引起的别名
eg:
SQL> select name "xingxing" from test1;
 
xingxing
--------------------
张学友
xingxing
田月超
田月星
yuechaotian
李连杰
 
已选择6行。

二. 
1 将两个字段组合用一个别名表示,字段用||隔开 as 别名
eg:
SQL> select id||name as "id_name" from test1;
 
id_name
-----------------------------------------------
1张学友
2xingxing
4田月超
5田月星
6yuechaotian
2李连杰
 
已选择6行。
2 用distinct显示时候的去掉重复的行
看我的test1表中用两个id为2的记录,现在用distinct试试
eg:
SQL> select distinct id from test1;
 
        ID
----------
         1
         6
         2
         4
         5
看就显示一个id为2的记录吧。
now我再添加一个相同的名字
eg:
SQL> insert into test1 values(3,'田月星');
 
已创建 1 行。
 
SQL> select * from test1;
 
        ID NAME
---------- --------------------
         1 张学友
         2 xingxing
         3 田月星
         4 田月超
         5 田月星
         6 yuechaotian
         2 李连杰
 
已选择7行。
 
SQL> select distinct name from test1;
 
NAME
--------------------
xingxing
张学友
田月超
李连杰
yuechaotian
田月星
 
已选择6行。
 
author:yuexingtian
date:2009-5-15 星期五 
 
这样的select别名,你肯定没有想到

CREATE OR REPLACE VIEW V_SHIYE_BXJZL AS
 SUM(b.dyje) dyje,
  (select min(e.ksrq) from yz_dyzl d,yz_dyzlmx e
         where d.dyzlsxh=e.dyzlsxh
           and d.grsxh=a.grsxh
           and d.ryzlsxh=a.shiyezlsxh
           and d.dylx = '0401'
           and e.dybm='b04001') ksrq,
   TO_CHAR(ADD_MONTHS(TO_DATE((select min(e.ksrq) from yz_dyzl d,yz_dyzlmx e
         where d.dyzlsxh=e.dyzlsxh
           and d.grsxh=a.grsxh
           and d.ryzlsxh=a.shiyezlsxh
           and d.dylx = '0401'
           and e.dybm='b04001'), 'yyyymm'), a.bchjkfys - 1),'yyyymm') zzsj
   FROM v_shiye_shiyeryzl_gr a, v_yz_dyzlxx b




0 0
原创粉丝点击