7

これは非常に単純に思えますが、サブクエリを実行しないと理解できないようです (クエリの速度が大幅に低下するようです - <1 ではなくほぼ 10 秒かかります)。

送信済みドキュメントのテーブルがあり、最後に送信されてから更新されたものと、送信されていないものを選択したいとしましょう。

SELECT d.document_id, max(sd.document_sent_date) as last_sent_date
FROM documents d
LEFT JOIN sent_documents sd ON d.document_id=sd.document_id
WHERE last_sent_date is NULL OR last_sent_date<d.last_updated
GROUP BY d.document_id

このようなことは可能ですか?基本的に、where 句で max() の結果を使用したいと考えています。

4

1 に答える 1

9

あなたはhaving条項が欲しい。

一般的な規則:集計whereの日付に作用し、集計のデータに作用します。having

于 2013-02-01T02:10:46.820 に答える