Access97 LEFT JOIN SELECT
Я застрял с некоторым 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", я получаю сообщение об ошибке в предложении FROM с выделением GROUP
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;
Может кто-то указать мне верное направление?
Спасибо
1 ответ
Квадратные скобки выглядят действительно странно в запросе. Попробуйте использовать обычные скобки для подзапроса:
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;