2010-11-02 61 views
3

我想知道選擇的,爲什麼當我使用MySQL查詢瀏覽器,雙擊表名SQL語句是這樣的:SQL中使用MySQL查詢瀏覽器

SELECT * FROM database.table t; 

這裏t =表的第一個字母...這封信的目的是什麼?我只是好奇

+0

選擇rltn的*從really_long_table_name rltn - 任何更清楚? – 2010-11-02 17:39:52

回答

7

t是表的別名。它有助於把與查詢時:在選擇列表

  • 多列

  • (多)加入其中,寫完整的表名是不可讀

    Foo f INNER JOIN Customers c on c.ID = f.CustomerID LEFT JOIN BAR b on b.ID=f.ID

  • ,如果你想要同一張表的2個副本,您可以用不同的名稱將它們別名:

    Invoices i LEFT JOIN Invoices i2 on i.ID = i2.MasterInvoiceID

  • 長表/查看將會很麻煩的書寫/閱讀名稱。命名約定有時是罪魁禍首。想象一下,一個數據倉庫表所示:它不是必需的

    InvoicesThatAreOverdue_Temp_Holding_20101128

,但MySQL查詢瀏覽器幫助推廣使用別名。希望它能幫助開發人員編寫可讀的代碼!

+1

+1:我的工作在這裏完成:) – 2010-11-02 17:36:14

+0

@OMG:歡呼!天哪,這個答案應該真的標記爲CW;) – 2010-11-02 17:40:32

+0

謝謝你所有的好消息。我從來不知道你可以不使用別名。信息+1,讓我更加懶惰。 – Richard 2010-11-02 17:47:30

1

您實際上正在使用快捷方式(別名)爲該表提供新名稱。

// this is the full command but you can leave out AS if you want 
SELECT * FROM database.table AS t; 

當您連接多個表時,表別名對於較大的查詢非常有用。

2

It is known as alias :)

在SQL中,別名可以給 表或到列。您可以使用別名給 表或另一個名稱 。如果你有很長的或 複雜的表名或列名,這可能是一個好的 。

3

這是一個別名,讓您可以縮短你的引用例如

對於

Select * from table1 t1 
Inner Join table2 t2 on t1.PK = t2.FK 

而是這個

Select * from table1 
Inner Join table2 on table1.PK = table2.FK