내 페이지에 나타난 열 값을 정렬하고 싶습니다. 처음에는 활성 상태이고 그 다음 보류 상태이며, 다음에는 팔릴 것입니다. 그러나 달리 보여주는. 여기에 그 상태가 알파벳에 있기 때문에이 ORDER BY Status
주어진 이론적으로 작동해야한다는 사실이지만, 당신이MySQL 필드() 정렬
SELECT * FROM custom ORDER BY status ASC
내 페이지에 나타난 열 값을 정렬하고 싶습니다. 처음에는 활성 상태이고 그 다음 보류 상태이며, 다음에는 팔릴 것입니다. 그러나 달리 보여주는. 여기에 그 상태가 알파벳에 있기 때문에이 ORDER BY Status
주어진 이론적으로 작동해야한다는 사실이지만, 당신이MySQL 필드() 정렬
SELECT * FROM custom ORDER BY status ASC
내 코드입니다 현재 원하는 순서 은이 알파벳 순서로 표시되며 잠깐 동안 "작동하지 않음"이 의미하는 바가 없다는 것을 무시하면 더 확장 가능한 방법으로 CASE
표현을 사용하는 것입니다.
ORDER BY CASE Status
WHEN 'Active' THEN 0
WHEN 'Pending' THEN 1
WHEN 'Sold' THEN 2
WHEN 'Upcoming' THEN 3
END DESC;
미래 보장형 솔루션은 ID, 이름 및 시퀀스가있는 상태 테이블입니다. 쿼리의 해당 테이블에 가입하고 시퀀스별로 정렬합니다. 나중에 다른 순서로 데이터를 요청하기로 결정한 경우 순서를 변경할 수 있으며 나중에 쿼리를 터치 할 필요없이 상태 유형을 더 추가하는 것이 쉽습니다. 또한 문자열 대신에 ID를 저장할 수 있으므로 같은 양의 공간에 더 많은 데이터를 저장할 수 있습니다.
예제 데이터 세트와 원하는 결과를 보여줍니다. – Kermit
처음에는 그 때 판매되고 그 후에는 보류중인 –
좋아요, 예제 데이터 세트를 보여주지 마십시오. – Kermit