《Mysql實例MySQL中使用表別名與字段別名的基本教程》要點:
本文介紹了Mysql實例MySQL中使用表別名與字段別名的基本教程,希望對您有用。如果有疑問,可以聯系我們。
MySQL 表別名(Alias)
SQL 表別名
在 SQL 語句中,可以為表名稱及字段(列)名稱指定別名(Alias),別名是 SQL 尺度語法,幾乎所有的數據庫系統都支持.通過關鍵字 AS 來指定.
表別名語法:
MYSQL數據庫
SELECT column FROM table AS table_alias
上述 SQL 執行后的效果,給人感覺是對 table_alias 表進行查詢,但實際上對單表做簡單的別名查詢通常是無意義的.一般是對一個表要當作多個表來操作,或者是對多個表進行操作時,才設置表別名.
表別名使用例子
下面是一個簡單的多表操作的例子:
article 文章表:
MYSQL數據庫
MYSQL數據庫
user 用戶表:
MYSQL數據庫
MYSQL數據庫
當查詢一篇文章的時候,一般會同時將對應的文章作者查詢出來,通常的 SQL 語句為:
MYSQL數據庫
SELECT article.title,article.content,user.username FROM article, user WHERE article.aid=1 AND article.uid=user.uid
設置表別名后:
MYSQL數據庫
SELECT a.title,a.content,u.username FROM article AS a, user AS u where a.aid=1 and a.uid=u.uid
上述兩條 SQL 語句查詢結果是一樣的:
MYSQL數據庫
MYSQL數據庫
可以看出,使用表別名查詢,可以使 SQL 變得簡潔而更易書寫和閱讀,尤其在 SQL 比擬復雜的情況下.除了使用別名來簡化 SQL 外,有些時候例如一個表做自身關聯時,必須要使用別名來當作兩個表進行關聯操作.MYSQL數據庫
MySQL 字段別名(列別名)
SQL 字段別名
同本文前文講述的表別名一樣,SQL(MySQL) 也支持對表的字段(列)設置別名.
字段別名語法:
MYSQL數據庫
SELECT column AS column_alias FROM table
字段別名使用例子
字段別名一個明顯的效果是可以自定義查詢數據返回的字段名.如下面的表數據:
user 用戶表:
MYSQL數據庫
MYSQL數據庫
在查詢的時候,對 username 字段使用別名:
MYSQL數據庫
SELECT username AS name,email FROM user
返回查詢結果如下:
MYSQL數據庫
MYSQL數據庫
當然如此簡單的定義字段的別名是沒有太大實際意義的,字段別名更多的意義是辦理字段名的重復,如一個表字段被查詢兩次或更多次時:
MYSQL數據庫
SELECT username AS name,username,email FROM user
或者兩個及更多表進行查詢,有相同的返回字段時:
article 文章表:
MYSQL數據庫
MYSQL數據庫
user 用戶表:
MYSQL數據庫
MYSQL數據庫
上面兩個表都定義了 title 字段且都必要返回該字段數據時,就必要定義字段別名(至少定義一個):
MYSQL數據庫
SELECT a.title AS atitle,u.username,u.title AS utitle FROM article AS a, user AS u where a.uid=u.uid
返回查詢結果如下:
MYSQL數據庫
MYSQL數據庫
可以看出,當查詢返回的字段名稱相同時,可以通過定義別名來避免沖突,上面查詢的例子同時定義了字段別名與表別名.
提示
通常,定義字段別名的 AS 關鍵字可以省略,即下面兩句 SQL 效果一致:
MYSQL數據庫
SELECT username AS name FROM user SELECT username name FROM user
但我們建議不要省略 AS 關鍵字.
別名(alias)是 SQL 的尺度語法,幾乎所有的數據庫系統都支持.在處理一些復雜的查詢時,可以合理的定義表和字段別名來使 SQL 語句看起來更加精簡易讀,也避免查詢返回相同字段數據時的沖突.
MYSQL數據庫
維易PHP培訓學院每天發布《Mysql實例MySQL中使用表別名與字段別名的基本教程》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。