簡體   English   中英

為什么這樣的語句在MySQL中有效?

[英]Why does such statement work in MySQL?

我正在使用MySQL 5.6.23-enterprise-commercial-advanced。 我有一個名為FILE的表,如下所示:

+---------+
| file_id |
+---------+
|      11 |
|      12 |
|      13 |
|      14 |
+---------+

我嘗試運行一個查詢SELECT A.FILE_ID FROM FILE A; root @ localhost下 ,它已成功執行。 但是沒有像A這樣的表(任何表都可以),因此為什么可以執行它,並且看起來與SELECT FILE.ID FROM FILE;具有相同的效果SELECT FILE.ID FROM FILE; 我正在做一個現有項目,我已經看到了。 使用它有什么好處嗎?

因為為表賦予別名A所以您實際上是在select語句期間臨時重命名表。

有關更多信息,請參見鏈接-MYSQL ALIAS

在您的情況下, A只是表文件的別名。 這就是查詢有效的原因。

在此處閱讀有關SQL別名的更多信息:

SQL別名用於臨時重命名表或列標題。

您的表名是FILEA是表FILE的別名。

您可以在select語句中使用Alias進行閱讀:

MySQL別名

別名用於臨時重命名表或列的名稱,以便更好地理解。

在您的情況下, A作為表的別名。 因此,您必須在FILEA之間編寫as 所以現在您的查詢是這樣的

SELECT A.FILE_ID FROM FILE as A;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM