テキストでのクエリ:「アクティブなすべてのユーザーと完了した注文を入力し、指定した期間に割り当てられた完了した注文」を照会します。SQL-異なる条件の2つのテーブル数を持つ2つのテーブルを結合する方法
LEFT JOIN orders l
ON l.idDispatcher = u.id
私はこれを結合する必要があります。ここでは
は、私はこれが私のユーザーが順番に割り当てられているすべての注文を与えるだけで1カウント
SELECT u.firstname, u.lastname, COUNT(l.id) AS totalCompleted
FROM users u
LEFT JOIN orders l
ON l.idDispatcher = u.id
WHERE u.disabled = '0'
AND l.smallStatus='1'
AND l.dateAdded >= :from
AND l.dateAdded <= :to
GROUP BY u.firstname;
を作成するために管理クエリですが次のものをベースにしている別のクエリでクエリします。
LEFT JOIN orders l
ON l.addedById= u.id
I tr Yこれ:私はそれは、2つの異なる数値とする必要がある場合
LEFT JOIN orders l
ON l.idDispatcher = u.id AND l.addedById= u.id
COUNT(l.id)
は、ユーザによって追加された割り当て注文と注文の結果を組み合わせます。私はまた、COUNTの中に条件を入れようとしましたが、成功しませんでした。
だから... ...まさに問題/質問は何ですか?何が効いていないのですか? – Rogue
ヒント:条件付きでこのようにカウントできます: 'sum(a = 123)'。これは、条件が真である頻度を数えます。 –
@Rogue問題は、2つの別々のクエリで動作するようになっているため、1に結合しようとしています –