Oracle的別名

在SQL語句中,可以給表和列起別名,這是臨時的別名,與同義詞不一樣,同義詞是永久的別名。

別名是多表查詢和嵌套查詢語句的基礎知識,本文只介紹別名的語法,不涉及別名的應用技巧,大家在學習的時候可能覺得別名沒什麼意義,其實不然。

一、生成測試數據

用以下SQL創建超女基本信息表(T_GIRL),插入一些測試數據。

create table T_GIRL
(
  id        char(4)         not null,   -- 編號
  name      varchar2(30)    not null,   -- 姓名
  yz        varchar2(20)        null,   -- 顏值
  sc        varchar2(20)        null,   -- 身材
  weight    number(4,1)     not null,   -- 體重
  height    number(3)       not null,   -- 身高
  birthday  date            not null,   -- 出生時間
  memo      varchar2(1000)      null    -- 備註
);
insert into T_GIRL(id,name,yz,birthday,sc,weight,height,memo)
  values('0101','西施','漂亮',to_date('2000-01-01 01:12:35','yyyy-mm-dd hh24:mi:ss'),
         '火辣',48.5,170,'這是一個非常漂亮姑娘,老公是夫差,男朋友是范蠡。');
insert into T_GIRL(id,name,yz,birthday,sc,weight,height,memo)
  values('0102','貂禪','漂亮',to_date('1997-08-02 12:20:38','yyyy-mm-dd hh24:mi:ss'),
         '苗條',45.2,168,'王允真不是男人,幹不過董卓就把美人往火坑裏推,千古罪人啊。');
insert into T_GIRL(id,name,yz,birthday,sc,weight,height,memo)
  values('0103','妲已','漂亮',to_date('1998-03-03 10:50:33','yyyy-mm-dd hh24:mi:ss'),
         '火辣',53.6,172,'如果商真的因我而亡,您們男人做什麼去了?');
insert into T_GIRL(id,name,yz,birthday,sc,weight,height,memo)
  values('0104','芙蓉姐姐','豬扒',to_date('1980-05-05 10:11:55','yyyy-mm-dd hh24:mi:ss'),
         '膘肥體壯',85.8,166,'如果不努力學習技術,將來就會娶個芙蓉姐姐,哼哼。');

二、表和列的別名

我們先來看一個SQL語句。

select id,name,yz,sc,to_char(birthday,'yyyy-mm-dd hh24:mi:ss') from T_GIRL;

在這裏插入圖片描述

select語句返回結果集的列標題是列名,如果對列用了函數就是函數的文本。

試試別名:

select id 編號,name 姓名,yz 顏值,sc 身材,to_char(birthday,'yyyy-mm-dd hh24:mi:ss') 生日
  from T_GIRL 超女基本信息表;

在這裏插入圖片描述

1、列的別名

列的別名有兩種寫法:

1)直接在列後面加空格寫別名,例如:name 姓名。

2)使用as在列後面再寫別名,例如:name as 姓名。

別名可以直接書寫,如果別名中有特殊字符,如數字、單引號和空格,就用雙引號將別名括起來。

2、表的別名

表的別名與列的別名不同的地方就是表的別名不能用as。

三、注意事項

1、列的別名

列的別名這種說法不準確,準確的說法是結果集的列的別名,以下用示例來證明。

1)列的別名不能用在where子句中。

select id 編號,name 姓名 from T_GIRL where id='0101';
select id 編號,name 姓名 from T_GIRL where 編號='0101';

以上兩條SQL語句,第一條是正確的,第二條會報錯。

2)列的別名可以用於order by關鍵字中。

select id 編號,name 姓名 from T_GIRL order by id;
select id 編號,name 姓名 from T_GIRL order by 編號;

以上兩條SQL語句都是正確的。

四、版權聲明

C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。
來源:C語言技術網(www.freecplus.net)
作者:碼農有道

如果這篇文章對您有幫助,請點贊支持,或在您的博客中轉發我的文章,謝謝!!!
如果文章有錯別字,或者內容有錯誤,或其他的建議和意見,請您留言指正,非常感謝!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章