Merhaba arkadaşlar,
videolar adlı tablom var, tabloda izlenme sütununda 105-110 izlenmeli videolar var ancak DESC 99 izlenme gösteriyor en fazla..
SELECT * FROM videolar where onay='1' ORDER BY izlenme DESC yapıyorum,
105 izlenmeli olan üste çıkmıyor üstte 99 izlenmeli videolar var. Nedir bu problem? phpMyAdmindede yaptım aynı.
izlenme sütunundaki değer - ilginç bir problem
3
●278
- 01-12-2010, 14:08:15INT yap düzelir.ajhier adlı üyeden alıntı: mesajı görüntüle
Varchar stringdir sıralarken de stringe göre sıralıyordur. Database ondan sıralamada hata yapıyor olabilir.
Anladığım kadarı ile Varchar sıralamayı karakter sayısının fazlalığından önce soldan sağa doğru harf gibi yapıyor.
SELECT izlenme FROM videolar ORDER BY izlenme; izlenme _________ 1 10 100 1000 10000 ... 2 20 200 2000 20000 ... 3 30 300 3000 30000 ... ... ... ... 9 99 999 9999 99999
Şekinde sıraladığı için sendeki en sondaki değer 99 olarak görünüyor.
O sütnunu INT yap sorun çözülür ya da sorguyu şöyle dene...
SELECT izlenme FROM videolar ORDER BY izlenme+0;