SELECT test_column FROM test_table ORDER BY test_column
bana verir bu:SQL - ORDER BY düzgün çalışmıyor mu?
1
12
123
2
3
Neden:
Sen nokta var @JosephPla1
2
3
12
123
, teşekkür ederim. Dizeleri sayı gibi nasıl sıralayabilirim?
SELECT test_column FROM test_table ORDER BY test_column
bana verir bu:SQL - ORDER BY düzgün çalışmıyor mu?
1
12
123
2
3
Neden:
Sen nokta var @JosephPla1
2
3
12
123
, teşekkür ederim. Dizeleri sayı gibi nasıl sıralayabilirim?
SELECT test_column
FROM test_table
ORDER BY cast(test_column as int)
deneyin Ama doğru olanları sütun türlerini değiştirerek içine bakmak gerekir.
"CAST" ın herhangi bir dizin kullanmayacağını dikkate almaya değer. – Kermit
Bu sıralama çalışıyor. Sözlükik bir sıralama (alfabetik). Bu sütunda bir metin (char, varchar, ...) tipi var, bu yüzden alacağınız sıralama, metinsel değil, sayısal.
Sayısal bir sıralama isterseniz, sayısal bir sütun türü kullanın (ör. Int). (Ya sütunu uygun attı.)
Sütunun türü varchar veya benzeri bir şey olup olmadığını kontrol edin. Sayısal değere değil, dize değerine göre sıralanıyor gibi görünüyor. Sütun yalnızca sayılar içeriyorsa, int türünde daha iyi olmalıdır.
Sen dize tarafından değere göre değil, sipariş. –
Ne tür si sütunu test_column? – slavoo
SELECT gibi bir şey yapın Test_column FROM test_table SİPARİŞ BY dönüştürün (int, test_column) –