id(人の)、city(人が訪問した)、date(彼の訪問の)の3つの列を持つテーブルがあります。特定の日付の間にロサンゼルス市にいて、他の特定の日にニューヨーク市にもいたすべての人(ID)を選択する必要があります。
これが私が今実行しているクエリの例です:
SELECT DISTINCT id
FROM places
WHERE date >= '2011-03-18' AND
date < '2011-03-19' AND
city = 'los angeles' AND
id IN (SELECT DISTINCT id
FROM places
WHERE date >= '2011-03-15' AND
date < '2011-03-16' AND
city = 'chicago'
GROUP BY id);
私もできることはありますか?他に使用できるクエリはありますか?この選択は遅すぎます。