MySQL SELECT 範例1

2013-05-27_141219

這是MySQL 5實力養成暨評量裡的3-57.『某公司產品資料表(products)欄位結構如附圖:下列SQL敘述哪一項是合法的?』

產品資料表products:

欄位名稱 pro_id supp_id description price
資料型態 int char(3) char(30) float
說明 產品編號 供應商代碼 產品規格 單價

答案:

(B) pro_id,supp_id,price*1.05 products order by price;

(C) select pro_id,supp_id,price*0.05 tax from products order by price;

(D) select pro_id,supp_id,price*0.05 as tax from products order by tax;

這一題我們有選A,但答案沒有,我們沒選D,但是答案中有,我們就來分析這兩個選項吧。我們在phpmyadmin下select pro_id,supp_id,price where price<100 order by supp_id desc,pro_id;這個SQL查詢,結果出現:

#1064 – You have an error in your SQL syntax; check the manual that corresponds to your server version for the right syntax to use near ‘where price<100 order by supp_id desc,pro_id’ at line 1

這樣的錯誤,喔~,原來少了FROM的關鍵字,真是囧…

而D的選項執行時無誤,這個錯誤起源於有時候別名不可以在一些敘述中出現,當然我也有點忘,特別是在複雜的SQL敘述中,不過顯然地在這裡是可以執行的。

Print Friendly, PDF & Email

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料