Doğru Cevap
-
Şu şekilde yapsan;
SELECT distinct(konu) FROM icerik ORDER BY id DESC limit 1
-
bensedat18
ama tek değer çekmeyecem hocam, tüm konu başlıklarını almam gerek.11 yıl önce yazılmış -
xuma
O zaman senin yapmak istediğin tüm konuları (aynı konu başlıkları olmayacak şekilde) listeletmek ve id'ye göre sıralamak.
Eğer öyleyse ;SELECT distinct(konu),id FROM icerik ORDER BY id DESC
yapabilirsin.Eğer değilse istediğini biraz açarsan daha net cevap verebiliriz.11 yıl önce yazılmış -
bensedat18
"O zaman senin yapmak istediğin tüm konuları (aynı konu başlıkları olmayacak şekilde) listeletmek ve id'ye göre sıralamak."
aynen öyle hocam fakat tekrar eden başlıklarda id si en büyük olanı almak istiyorum (amacım son eklenen içeriğe ilişkin konu başlıklarının geriye doğru sıralamasını yapmak. bu yüzden tekrar eden başlıkta en büyük id'li içeriği almak icap ediyor). bunu group ile order by max(id) olarak belirleyebiliyorduk fakat distinct ile yapamadım. şu şekilde
SELECT distinct(konu) FROM icerik ORDER BY max(id) DESC
yaptığım zaman tek konu başlığı geliyor nedense.11 yıl önce yazılmış -
xuma
Yöntem 1 :
SELECT konu, baslik, id FROM icerik AS sonuc1 WHERE id = ( SELECT max( id ) FROM icerik AS sonuc2 WHERE sonuc1.konu = sonuc2.konu )
yöntem 2 ;
SELECT sonuc1.konu, sonuc2.id, sonuc2.baslik FROM ( SELECT max( id ) AS id, konu FROM icerik GROUP BY konu )sonuc1 JOIN icerik AS sonuc2 ON sonuc1.id = sonuc2.id
11 yıl önce yazılmış -
bensedat18
konu diye bir kolonum yoktu hocam. konu_basligi olarak kastetmiştim.
neyse anladığım kadarıyla diyorsunuz ki bunu distinct ile yapabilme imkanım yok. doğru mudur?
teşekkür ederim cevaplarınız için.11 yıl önce yazılmış -
xuma
Yukardaki sorgular tam olarak istediğini yapar distinct bu durumda pek işe yaramaz11 yıl önce yazılmış -
bensedat18
tamamdır eywallah hocam.11 yıl önce yazılmış
-
Cevaplar
Hiç cevap bulunamadı.