Ben istatistikleri derlemek için günlük bir sorgu koşuyorum - ama gerçekten verimsiz gibi görünüyor. Bu Query:
SELECT a.id, tstamp, label_id, (SELECT author_id FROM b WHERE b.tid = a.id ORDER BY b.tstamp DESC LIMIT 1) AS author_id
FROM a, b
WHERE (status = '2' OR status = '3')
AND category != 6
AND a.id = b.tid
AND (b.type = 'C' OR b.type = 'R')
AND a.tstamp1 BETWEEN {$timestamp_start} AND {$timestamp_end}
ORDER BY b.tstamp DESC
LIMIT 500
Bu sorgu gerçekten yavaş çalıştırmak gibi görünüyor. Adlandırma bok için özür dilemek - Ben gerçek tablo isimlerini açıklamıyoruz istendi.
Dış seçin tablo a gelen bir satır alır ve masa b bir satır alır çünkü seçme bir alt var nedenidir. Ama aynı zamanda b tablodan son author_id bilmeniz gerekir, bu yüzden bunu birini döndürmek için subselect çalıştırın. Ben bir php döngü içinde başka bir select çalıştırmak istemiyorum - bu da verimsiz olduğu gibi.
Düzgün çalışır - Ben sadece bu veri seti almanın çok daha hızlı bir yol bulmak gerekir.