Doğru Cevap
Cevaplar
-
Kendi soruma kendim cevap veriyorum. Çünkü çözdüm :)
diziler ile yaptım :)
$sar=array(); $aktars = mysql_query ("select * from TABLO order by id asc"); while ($gos = mysql_fetch_array($aktars)){ $sar[]=$gos['sira']; } echo max($sar);
-
select * from TABLO order by sira DESC limit 1
buradaki sira alanını sayılar alanı olarak düşünürsek ve bu alanı DESC ile tersten sıralanmasını istersek istediğinizin gerçekleşmesi gerekir. yani şöyleki..
diyelimki sayilar alanında 3 satır olsun.
1.satırdaki değer 5
2.satırdaki değer 7
3.satırdaki değer 2
select * from TABLO order by sayilar DESC limit 1
bu sorgunun döndüreceği satır 2.satır yani 7 dir.-
axaturk
DESC komutu büyükten küçüğe doğru sıralamıyor. Son EKLENENDEN ilk EKLENENE doğru sıralıyor.
Eğer büyükten küçüğe doğru sıralasa idi dediğin olurdu :)11 yıl önce yazılmış -
hasyer
yanlışın var axaturk dediğim şekilde denersen görürsün.11 yıl önce yazılmış -
axaturk
denedim olmadı. :S11 yıl önce yazılmış -
bensedat18
DESC komutu büyükten küçüğe doğru sıralar. eğer order by id desc dersen yada tarih tablon var ve order by tarih desc dersen evet yeniden eskiye göre sıralar ama burda da mantık zaten büyükten küçüğe doğru sıralıyor olmasıdır. son eklenen id si bir öncekinden 1 fazla olduğu için yada yeni tarih eski bir tarihten büyük kabul edildiği için sıralama aslında büyükten küçüğe doğru bir sıralama olur.11 yıl önce yazılmış -
axaturk
@bensedat18
şimdi burda nası sıralayacak? Onu anlamadım @hasyer in dediği mi doğru. benim dediğim mi?11 yıl önce yazılmış -
protest
yanılıyorsun.
eger order ile sıraladıgın alan integer ise; asc ile artan, desc ile azalan sırada olur.
varchar ise; asc ile sozluk sırası, desc ile ters sözlük sırası
date ise; asc ile eskiden yeniye, desc ise yeniden eskiye sıralanır.
ilk kayıt, son kayıt sırası yapmaz.11 yıl önce yazılmış -
axaturk
@protest. dediğin gibi integer yapınca desc komutuyla en büyük sayıyı veriyor. Teşekkürler11 yıl önce yazılmış -
bensedat18
hasyer arkadaşımızın dediği doğrudur. sen işlemini bir kez daha kontrol etmelisin. muhakkak bir yerde atladığın birşey olmalı.11 yıl önce yazılmış -
axaturk
Özür dilerim. Hata bende INTEGER yapmadığımdan kaynaklanıyormuş11 yıl önce yazılmış -
protest
önemli değil. iyi çalışmalar.11 yıl önce yazılmış
-
-
açıkçası kulağınızı biraz tersten tutmuşsunuz,zaten SQL MAX() fonksiyonu ile bunu size sağlıyor.
ÖRN;
Select max(puan) tbl_users where status='1'
Burada en yüksek puanı çekecektir.