설명 제목이 너무 어려워서 내가 원하는 것을 표현하는 더 좋은 방법은 예제를 사용하는 것입니다.두 개의 varchar 열에 의한 MySQL 순서
NAME | EMAIL
John | [email protected]
Mike | [email protected]
NULL | [email protected]
Bill | [email protected]
나는 결과가 될 수 있도록 쿼리를 주문하려는 :의 내가 다음에 테이블이 있다고 가정하자가 명확하지 않으면
NAME | EMAIL
NULL | [email protected]
Bill | [email protected]
John | [email protected]
Mike | [email protected]
를,이 두 이름으로 주문해야하고 NAME 열에 해당 행에 대한 항목이 없을 때 두 가지 우선 순위가 혼합되어 있습니다. 따라서 NAME이 NULL이면 EMAIL의 값을 사용하여 다른 행과 관련하여 해당 행을 정렬하지만 NAME이 NULL이 아닌 경우 NAME을 사용하고 EMAIL을 사용하여 정렬하지 않습니다.
짐작할 수 있듯이 ORDER BY name ASC, email ASC
은 그럴 수 없습니다. 나는 Google에 이것을 어떻게하는지 잘 모르겠다. 그래서 나는 SO로 향했다. 미리 감사드립니다.
답변이 많았지 만 이것이 처음 본 것입니다. 내가 끝내었던 것 (나는 조인과 추가 할 논리가 더 많았지 만 그래)과 일치했다. – Orlando
글쎄, 다른 사람들은주의 깊게 읽지 않았다. :) 당신의 예제를 기반으로 대부분의 대답은 모든 NULL이 최상위라고 가정했지만, 당신이 필요로하는 것은 분명하지 않다. –