我檢討別人的代碼和跨越這種選擇語法傳來:是什麼括號意味着SELECT(COLNAME)mysql的
SELECT (Test_ID) id, (Test_Host) host, (Test_Port) port
FROM Test_Connection
我可以告訴括號做什麼這可能意味着SELECT Test_ID AS id
但有一個使用上述對比使用AS
的優勢還是劣勢?
我檢討別人的代碼和跨越這種選擇語法傳來:是什麼括號意味着SELECT(COLNAME)mysql的
SELECT (Test_ID) id, (Test_Host) host, (Test_Port) port
FROM Test_Connection
我可以告訴括號做什麼這可能意味着SELECT Test_ID AS id
但有一個使用上述對比使用AS
的優勢還是劣勢?
你說得對。這意味着Select Column_Name AS Alias
。這是一種奇怪的編碼風格,可能代表了某人對SQL的低估程度。去除父母親身份沒有任何傷害。只需保持所有代碼相似。
使用AS
是有效的,但與縮進一起導致代碼更容易閱讀。
Parenthesys用於設置表達式的操作順序。對於單列而言,它們是多餘的,但不會導致任何錯誤,因爲語法分析器無論如何都會放棄它們。這種風格會產生令人困惑和難以閱讀的代碼。
括號不做任何事。他們只是在括號中放置一個表達式,並且該表達式由單個列名組成。
這是很最好使用as
定義列alaises:
SELECT Test_ID as id, Test_Host as host, Test_Port as port
FROM Test_Connection;
要明白其中的道理,考慮這兩個選擇條款:
SELECT Test_ID, Test_Host, Test_Port
SELECT Test_ID Test_Host, Test_Port
前返回三列,只有第二二。缺少的逗號可能很難找到並導致調試問題。
我承認,將列表達式放在圓括號中也解決了這個問題(別名不允許使用圓括號)。但是,您也可以使用標準慣例來編寫代碼。
這只是一種不同的語法。它符合相同的。 – 2014-08-29 13:40:10
'因爲'完全是可選的 – 2014-08-29 13:42:30