0

次のクエリがあります。

    SELECT count(Committees)
    FROM [Annual Questionnaire]
    WHERE Committees=TRUE;

ただし、Insurance、Equalities などの結果に他の列を含めたいと思います。また、Insurance=True など、値が True の場合はカウントされます。テーブル内のすべての列をカウントする必要はありません。

疑似クエリは次のようになると思います:

SELECT count(Committees),
       count(Insurance)
FROM [Annual Questionnaire]
WHERE Committees=TRUE
  AND Insurance=TRUE;

^ 委員会と保険のみが True である行を選択するため、これは機能しません。

基本的に、値がTrueである指定された列をどのように数えますか?

4

2 に答える 2

3

あなたは次のようなことができます

SELECT 
    SUM(IIF(Committees=True, 1, 0))
    , SUM(IIF(Insurance=True, 1, 0))
FROM [Annual Questionnaire]
于 2013-04-09T10:08:00.627 に答える
1

WHERE 句で両方を指定すると、両方の列が trueである行のみが返されます。実行の順序は、Select の前に Where 句が実行されることを覚えておいてください。そのため、持っているデータに基づいてデータがフィルター処理され、選択するように指示されたものは何でも選択されます。

実行順序は次のとおりです。

FROM clause
WHERE clause
GROUP BY clause
HAVING clause
SELECT clause
ORDER BY clause 

すでに同様のスレッドがあります: 1 つの SQL クエリで複数のカウントを取得するには?

于 2013-04-09T10:05:05.940 に答える