1

基本的にクエリを実行しましたが、機能しませんでした 'Msg 156, Level 15, State 1, Line 2 Incorrect syntax near the keyword 'FROM''

SELECT COUNT(*)
FROM
(
SELECT Group_ID, count(ID)
FROM dbo.S1_Users
WHERE Service_Plan = 'Multi User Foreign (B)'
GROUP BY Group_ID
HAVING count(ID) = 1
)

簡単に修正できることはわかっており、Google を検索しましたが、正しいものが見つかりませんでした

それについて説明できる機関はありますか?

4

2 に答える 2

5

ダミーテーブルに名前を付けcount(ID)、内部クエリから列に名前を付ける必要があります

SELECT COUNT(*)
FROM
(
SELECT Group_ID, count(ID) as ID_Count
FROM dbo.S1_Users
WHERE Service_Plan = 'Multi User Foreign (B)'
GROUP BY Group_ID
HAVING count(ID) = 1
) as A

使用していないカウントを完全に削除することもできます

SELECT COUNT(*)
FROM
(
SELECT Group_ID
FROM dbo.S1_Users
WHERE Service_Plan = 'Multi User Foreign (B)'
GROUP BY Group_ID
HAVING count(ID) = 1
) as A
于 2013-06-11T20:05:20.160 に答える
5

次のようにしてみてください。

SELECT COUNT(*)
FROM
(
    SELECT Group_ID, count(ID) As cnt
    FROM dbo.S1_Users
    WHERE Service_Plan = 'Multi User Foreign (B)'
    GROUP BY Group_ID
    HAVING count(ID) = 1
) A
于 2013-06-11T20:05:55.867 に答える