[英]Syntax error (comma) in query expression of SQL Statement in MS Access 2007
[英]Syntax error (comma) in query expression. MS Access 2013
我在Access 2013中建立一個SQL查詢。這是我的查詢:
SELECT
COUNT(Age) FROM Members AS [Under 12] WHERE Age <= 12,
COUNT(Age) FROM Members AS [13-18] WHERE Age BETWEEN 13 AND 18
但我不斷收到此錯誤:
查詢表達式'Age <= 12,來自SukkotMembers AS [13-18]年齡在13和18之間的語法錯誤(逗號)`
問題出在第二行末尾的逗號,但是我不明白為什么。 當我只運行一行時,它工作正常。 我對SQL真的很陌生,請注意。
我也剛剛意識到AS [Under 12]
和AS [13-18]
無法正常工作,我也不知道為什么
第一:您使用的語法不是有效的SQL,因為您有多個不允許的FROM
子句; 這同樣適用於where
子句,該子句對整個集合進行操作。
您不能僅將SQL的零碎片段和補丁打成一片,以得到有效的查詢-必須遵守一個相當嚴格且定義明確的語法。
您想要的是使用返回標量值的子查詢或使用條件計數:
SELECT
COUNT(IIF(Age<=12,age,null)) AS [Under 12]
,COUNT(IIF(Age BETWEEN 13 AND 18,age,null)) AS [13-18]
FROM Members
同樣, FROM Members AS [13-18]
為表而不是列分配別名。
使用子查詢(我想這可能是您的意圖):
SELECT DISTINCT
(SELECT COUNT(*) FROM MEMBERS WHERE AGE<=12) AS [UNDER 12] ,
(SELECT COUNT(*) FROM MEMBERS WHERE AGE BETWEEN 13 AND 18) AS [13-18]
FROM MEMBERS
您還可以總結:
SELECT
Sum(Abs(Age <= 12)) AS [Under 12],
Sum(Abs(Age BETWEEN 13 AND 18)) AS [13-18]
FROM
Members
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.