Yani, yapmaya çalıştığım sorgu şu anda böyle görünüyor:MySQL Geçmişte Tarihler Seç: MAX ve GROUP BY ile Sorun
SELECT `jid`, MAX(`start`) as `start` FROM `dates` WHERE `start` < NOW() GROUP BY `jid`
Tablo dates
temelde bir iş ile ilişkili bir DATETIME değeri start
tutar.
Muhtemelen tahmin ettiğiniz gibi, jid
, başka bir masada saklanan bir işin kimliğidir.
Bir işin birçoğu dates
olabilir. Neyi başarmaya çalışıyorum, hangi işlerin geçmişte start
tarihlerine sahip olduğunu bulmak.
Düşüncem, jid
ile gruplanan start
tarihlerinin en yüksek değerlerini seçmekti ve geçmişte olsaydı, aynı iş ile ilişkili tüm diğer tarihlerin de geçmişte olduğu anlamına gelirdi.
Bu sorgu çalışmıyor çünkü geçmişte start
tarihlerini kontrol ediyor ve ardından en yüksek olanı seçiyor. Bu, gelecekte aynı iş için başka bir tarih olasılığını dışlamaz.
Şimdi nasıl ilerleyebileceğimi bilmiyorum. Herhangi bir yardım veya ipucu takdir edilir.
Şerefe - Tom
sayesinde, bir soru daha, sen benim tabloda gelecek tarihleri umuyoruz diyorsunuz neden? – TomWilde
Aksi takdirde, bu hiçbir şey döndürmez (geçmişte bir tarihiniz varsa) –