[]
sql group by ve order by bir arada kullanmak
distinct değeriyle birlikte order by çalışıyor. ama bir kolon için distinct değeri uygulayıp ardından diğer kolonlarıda çekmek istiyorum ama yapamadım. Aşşağıdaki gibi bir sistem uygulayınca distinct işlemiyor.Nasıl çalıştırabilirim?
SELECT distinct kolon1 ,kolon2,kolon3 FROM tablo WHERE kolon1 LIKE '%$queryString%' and (durum = 'aktif' or durum = 'pasif' ) order by kolon2 desc LIMIT
SELECT distinct kolon1 ,kolon2,kolon3 FROM tablo WHERE kolon1 LIKE '%$queryString%' and (durum = 'aktif' or durum = 'pasif' ) order by kolon2 desc LIMIT
distinct değerleri temp tabloya alıp sonra where ile tablo değerlerini verip order by yapabilirsin
- azeroth (21.02.13 15:13:53)
Bir örnek ile gösterebilir misiniz? sqlde temel olarak bilgim var
- norek (21.02.13 15:23:06)
şöyle bişey olabilir,
select x.kolon1
,x.kolon2
,x.kolon3
from (select distinct kolon1
,kolon2
,kolon3
from tablo
where kolon1 like '%$queryString%'
and (durum = 'aktif' or durum = 'pasif')) x
order by x.kolon2 desc limit
select x.kolon1
,x.kolon2
,x.kolon3
from (select distinct kolon1
,kolon2
,kolon3
from tablo
where kolon1 like '%$queryString%'
and (durum = 'aktif' or durum = 'pasif')) x
order by x.kolon2 desc limit
- contavolta (21.02.13 15:25:32 ~ 15:26:13)
SELECT x.kolon1, x.kolon2, x.kolon3, x.kolon4
FROM (
SELECT DISTINCT kolon1, kolon2, kolon3, kolon4
FROM tablo
WHERE kolon1 LIKE '%$queryString%'
AND (
durum = 'aktif'
OR durum = 'pasif'
)
)x
ORDER BY x.kolon2 DESC
LIMIT 8
bu şekilde yaptı ama kolon1 guruplanmış olarak gelmedi
FROM (
SELECT DISTINCT kolon1, kolon2, kolon3, kolon4
FROM tablo
WHERE kolon1 LIKE '%$queryString%'
AND (
durum = 'aktif'
OR durum = 'pasif'
)
)x
ORDER BY x.kolon2 DESC
LIMIT 8
bu şekilde yaptı ama kolon1 guruplanmış olarak gelmedi
- norek (21.02.13 15:39:52)
1