Middle
Kursun en yüksek tarihi için ara tabloyla sorguyu nasıl yapılandırırsınız?
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir ara tablo kullanarak kursun en yüksek tarihini almak için, toplama ve JOIN içeren bir SQL sorgusu uygulanabilir.
Varsayalım ki şu tablolar var:
courses(id, isim)course_dates(course_id, tarih, fiyat)
Görev, her kurs için en yüksek tarihli kaydı almaktır.
Sorgu örneği:
SELECT c.id, c.isim, cd.tarih, cd.fiyat
FROM courses c
JOIN course_dates cd ON c.id = cd.course_id
JOIN (
SELECT course_id, MAX(tarih) AS max_tarih
FROM course_dates
GROUP BY course_id
) max_dates ON cd.course_id = max_dates.course_id AND cd.tarih = max_dates.max_tarih;
Burada:
max_datesalt sorgusunda, her kurs için en yüksek tarih seçilir.- Ana sorgu, kursları tarihlerle birleştirir ve en yüksek tarihe göre filtreler.
Bu yaklaşım, en yüksek kurs tarihi ile güncel verileri almak için ara tablo kullanır.