同一查询中COUNT和SUM的SQL难度

mj1*_*168 1 sql vb.net sql-server asp.net

我正在尝试计算我们拥有的客户数量,并获得任何客户订购书籍的总数.我们的应用程序运行SQL Server 2014.

CustomerName is a NVARCHAR.

BookOrdered is a BIT.
Run Code Online (Sandbox Code Playgroud)

这两个字段都在名为Customers的同一个表中.

myQuery = "SELECT COUNT (CustomerName), SUM (BookOrdered = 1) " & _
          "FROM Customers"
Run Code Online (Sandbox Code Playgroud)

浏览器显示错误:')'附近的语法不正确.

这在我们运行应用程序时有效MS Access,但在运行它时会遇到错误SQL Server.

Gio*_*uri 6

改成:

SELECT COUNT (CustomerName), 
       SUM (CASE WHEN BookOrdered = 1 THEN 1 ELSE O END)
FROM Customers
Run Code Online (Sandbox Code Playgroud)