SELECT DISTINCT city, street, street_type, house
FROM table
WHERE street LIKE '%Ololo%'
ORDER BY city, street, street_type, CHAR_LENGTH(house), house
CHAR_LENGTH(house)
은 ORDER BY의 네 번째 위치에 배치하면 정렬되지 않습니다. 1.30 위치에 놓여있는 경우에만 CHAR_LENGTH(house)
으로 시작합니다. city, street, street_type
에는 모두이 예에서 동일한 데이터가 들어 있습니다. ORDER BY의 첫 번째 열을 CONCAT하려고했으나 도움이되지 않습니다. 이러한 정렬을 깨고있다 : house
그것은 city, street, street_type
실제로 다른 것을 의미한다, 나는 그렇지 후행 공백Mysql : ORDER BY 절의 최대 열 수?
을 제거 CHAR_LENGTH(TRIM(house))
을 시도, house
이 char
입니다 CHAR_LENGTH(house), house
mysql이 반환하는 오류는 무엇입니까? –
죄송합니다. 수정 됨. 사용 된 모든 열은 city, street, street_type입니다. – michaelloop
오류가 없습니다. 잘못 정렬합니다. 작은 것, 큰 것, 작은 것. 모두 varchars입니다. 집에는 숯이 들어 있습니다. – michaelloop