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) select pro_id,supp_id,price*1.05 from products order by price;

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

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

[adsense][/adsense]

这一题我们有选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 MySQL 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叙述中,不过显然地在这里是可以执行的。