0

私はいくつかのaccess97 sqlで立ち往生しています。

SELECT Master.Text, Sub.Cnt
FROM Master
INNER JOIN [
SELECT Number, COUNT(*) As Cnt FROM SubTable GROUP BY Number]. AS Sub
ON Master.Number=Sub.Number
WHERE Master.Number=1;

期待どおりに動作しますが、'SubTable' 名を角かっこで囲む必要がある場所で、GROUP を強調表示する FROM 句でエラーが発生します

SELECT Master.Text, Sub.Cnt
FROM Master
INNER JOIN [
SELECT Number, COUNT(*) As Cnt FROM [Sub Table] GROUP BY Number]. AS Sub
ON Master.Number=Sub.Number
WHERE Master.Number=1;

誰かが私を正しい方向に向けることができますか?

ありがとう

4

1 に答える 1

0

角かっこは、クエリで非常に奇妙に見えます。サブクエリに通常の括弧を使用してみてください。

SELECT Master.Text, Sub.Cnt
FROM Master INNER JOIN 
     (SELECT Number, COUNT(*) As Cnt
      FROM [Sub Table]
      GROUP BY Number
     ) AS Sub
     ON Master.Number = Sub.Number
WHERE Master.Number = 1;

編集:

このクエリを次のように書き換えることができます。

SELECT Master.Text, COUNT(*) as Cnt
FROM Master INNER JOIN 
     [Sub Table] as sub
     ON Master.Number = Sub.Number
WHERE Master.Number = 1
GROUP BY Number;
于 2014-07-17T13:37:05.150 に答える