mySQL sıralar son çizgi

2 Cevap php

Ben bir dize (bir metin sütun) saklar benim tabloda bir sütun var:

varchar(16) latin1_swedish_ci

Ben sonunda alt çizgi ile başlayan sözcükleri döner "adı ASC ORDER BY" derken sorundur. Bu döndürülen bir örnektir:

-a
-mmddd2
-z
-z3
aaa
b
c
t
_a
___-

Ben sıralamak için php kullanmak bahse girerim, ancak mySQL çizgiden sonra çizgi koymak için kolay bir yol var mı? Bu javascript sıralama işlevi çıkışını maç olacak bu yüzden bu yapıyorum.

Ben almaya çalışıyorum:

-a
-mmddd2
-z
-z3
_a
___-
aaa
b
c
t

2 Cevap

Mevcut alfabe hiçbiri size açıklandığı gibi, kendi tanımlar here ihtiyacınız sıralama düzeni kullanırsanız Collations, sıralama düzeni tanımlamak.

Ben bu zarif bir çözüm olduğunu söylemiyorum, ama böyle bir şey yapıyor deneyebilirsiniz:

select name
from customers
order by replace(name, '_', '-+') asc;

Sadece çizgi sonra öneki çizgi değerleri koyacağız ne olursa olsun + değiştirin.