채택완료

sql order by 정렬이 이상합니다

2020-12-30 (수) 22:14:26 3,011

distance 필드에는 소숫점으로 데이터가 들어가 있습니다.

21.996

13.321

9.742

order by distance ASC 로 정렬했더니 9.742가 제일 상단으로 가는게 아니고

13.321

21.996

9.742

이렇게 정렬되네요.

distance 필드 데이터형이 varchar 로 되어 있어서 이러는걸까요?

아님 order by distance ASC 말고 다르게 정렬시켜야 할까요?

|

답변 2개 / 댓글 1개

채택된 답변
+20 포인트
2020-12-30 (수) 22:38:01

데이트형을 float 로 변경하시면 정상적으로 정렬될것입니다.

답변에 대한 댓글 1개

2020-12-30 (수) 23:58:41
예산했던데로 데이터형이 문제였나보네요...
기존데이터가 많아서 데이터형 변경하면 혹시나 문제가 생길가 싶어 미리 질문드린건데 감사합니다...
2020-12-31 (목) 09:49:48

ORDER BY (distance + 1) ASC

편법이지만 이렇게 해 보세요.

답변을 작성하려면 로그인이 필요합니다.