SELECT不返回数值

Are*_*yst 3 sql ms-access select group-by

我有一张桌子'书'.为简单起见,这里有3列:

name(text) | new(boolean) | press(text) 
Run Code Online (Sandbox Code Playgroud)

我需要选择拥有大多数新书的出版社(出版社).我不明白为什么Access显示"语法错误".

SELECT press, COUNT(new) AS [Number of new books]
FROM books
WHERE new = TRUE
GROUP BY press
HAVING COUNT(new) = 
  SELECT MAX(s) 
  FROM 
  (   SELECT COUNT(new) AS s, press 
      FROM books
      WHERE new = TRUE
      GROUP BY press
  )
Run Code Online (Sandbox Code Playgroud)

如果我只写第二部分:

  SELECT MAX(s) 
  FROM 
  (   SELECT COUNT(new) AS s, press 
      FROM books
      WHERE new = TRUE
      GROUP BY press
  )
Run Code Online (Sandbox Code Playgroud)

它返回正确的值(5)

如果我只写第一部分有条件= 5,那就好了.

SELECT press, COUNT(new) AS [Number of new books]
FROM books
WHERE new = TRUE
GROUP BY press
HAVING COUNT(new) = 5
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Joh*_*Woo 7

第二个查询应括在括号中

SELECT press, COUNT(new) AS [Number of new books]
FROM books
WHERE new = TRUE
GROUP BY press
HAVING COUNT(new) = 
(
  SELECT MAX(s) 
  FROM 
  (   SELECT COUNT(new) AS s, press 
      FROM books
      WHERE new = TRUE
      GROUP BY press
  )
)
Run Code Online (Sandbox Code Playgroud)