2012-08-15 2 views
2

나는 팀 이름과 ID를 가진 꽤 간단한 MySQL 테이블을 가지고있다. 팀 이름은 아래와 같이 보인다 :MySQL이 예상대로 주문하지 않는 이유는 무엇입니까?

Damer 
F11 
F12 
F15 
Herrar 
HJ18 
HJ20 
P15 
P16 
P11 
P12 
P8 
... 

하지만 ASC 또는 teamnames에 따라 DESC로 주문 때 나는 위와 같이, 내가 기대하는 순서대로 무언가를 그들에게하지 않습니다. 대신에 나는이 같은 목록을 가져올 수 :

P15 
P16 
Damer 
F11 
F12 
F15 
Herrar 
HJ18 
HJ20 
P11 
P12 
P8 
... 

이것은 아무 의미, 왜 MySQL은 두 P로 시작하는 이름 다음 하나 taht를가 D로 시작하는 세 이어 F로 시작 ... 그리고 마지막으로 끝과 시작 않습니다하지 않습니다 다시 P로 시작하는 세 팀이 있습니다.

아이디어가 있으십니까?

MySQL의 코드 :

SELECT * 
FROM `team` 
ORDER BY `team`.`teamname` ASC 
LIMIT 0 , 30 

내가 MySQL의 데이터 정렬 utf8_swedish_ci을 사용하고 있습니다.

+3

일부 이름의 첫 문자 앞에 공백이 있습니까/ –

+0

테이블, 데이터베이스 및 필드는 어떤 문자 집합입니까? – Bjoern

+1

@JohnConde 그리고 그것은 그렇게 쉬웠다! 예수! 보지 못했지만 일부 팀 이름 앞에 실수로 공백이있는 것처럼 보입니다. 그 대답을 자유롭게 주시면 답변으로 받아 들일 것입니다. – jamietelin

답변

4

순서가 잘못된 이름의 첫 문자 앞에 공백이있을 수 있습니다.

+0

고마워요! 때로는 그 대답이보기가 힘들 때가 있습니다. – jamietelin

관련 문제