2016-09-08 7 views
0

제 질문을 읽어 주셔서 감사합니다.php/sql에서 연 단위로 날짜순으로 정렬하기

내 mysql 데이터베이스는 내 기록 가게입니다. 작가, 제목, 출시일 등

출시일은 VARCHAR 및 입력 및 월/년

즉로 저장됩니다

나는 테이블이

내 필드 (700 개) 기록 레코드를 호출이 있습니다 01/2003 = 2003년 1월

즉, ZZ/1997 = 1997 중 - 일부 레코드가 나는 할 수 있도록하려면 한 달을

을 해달라고의 그런 다음 내 결과에 연도, 월 순으로 레코드를 표시하십시오. 즉 방문자에게 가장 최근의 상위 10 개 레코드 목록을 보여줄 수 있습니다. 레코드가 zz로 시작하면 해당 연도의 목록 순서대로 마지막 레코드가됩니다.

예시 정렬 결과는 이와 같다 :

2,001분의 11

06/2001

ZZ/2,001

09/2000 01/2000

zz/2000

도움을 주시면 감사하겠습니다.

많은 감사

매트.

+0

사용중인 데이터베이스에 질문을 태그하십시오. –

+0

또 다른 컬럼을 만들고 날짜를'/ dd' 옵션 또는'00' 또는 디폴트로'YY/mm/dd'로 올바르게 저장하십시오. – AbraCadaver

+0

감사합니다 abracadaver하지만 난 700 항목을 통해 이동하고 유닉스 날짜 형식으로 변경하고 싶지 않아 ... 그것은 나이가 걸릴 것입니다! – matt

답변

2

MySQL은, 당신은 할 수 있습니다 :

order by right(release_date, 4) desc, 
     left(release_date, 2) + 0 desc; 

메모를 두 번째 키. 월이 숫자로 변환됩니다. zz 값은 선행 숫자가 없기 때문에 0으로 변환됩니다.