为什么SQL SELECT语句的语法不正确?

问题描述 投票:-2回答:2

新到SQL教我们语法非正式,不知道我错过了什么。

数据库不能改变

Select Sum('Unit Price') as TotalPrice, Count('Order ID') as NumOfDiffProds, 
Avg(Quantity) as AvgQuantity, Avg(Discount) as AvgDiscount
From [Order Details]
Where [Order ID] = 1

我得到这个错误:

SELECT语句包含保留字或拼写错误或缺少变量名,或标点符号不正确,

sql
2个回答
0
投票

删除单引号中列名

Select Sum("Unit Price") as TotalPrice, 
Count("Order ID") as NumOfDiffProds, 
Avg(Quantity) as AchQuantity, Avg(Discount) as AvgDiscount
FROM TableName;

0
投票

我认为你正在使用MySQL。您可以使用反引号用空格来引用表或列名:

Select 
    Sum(`Unit Price`) as TotalPrice, 
    Count(`Order ID`) as NumOfDiffProds, 
    Avg(`Quantity`) as AvgQuantity, 
    Avg(`Discount`) as AvgDiscount
From 
    `Order Details`
Where 
    `Order ID` = 1

一个忠告:尽量避免在其名称中空格创建数据库对象。

© www.soinside.com 2019 - 2024. All rights reserved.