"Oracle 자연정렬, PostgreSQL 자연정렬"의 두 판 사이의 차이

13번째 줄: 13번째 줄:
==PostgreSQL==
==PostgreSQL==
<source lang='sql'>
<source lang='sql'>
SELECT * FROM 테이블 ORDER BY SUBSTRING(컬럼명 FROM '[^0-9]+'), SUBSTRING(컬럼명 FROM '([0-9]+)')::INTEGER);
SELECT * FROM 테이블 ORDER BY SUBSTRING(컬럼명 FROM '[^0-9]+'), SUBSTRING(컬럼명 FROM '([0-9]+)')::INTEGER;
</source>
</source>



2012년 9월 10일 (월) 11:41 판

Oracle 자연 정렬, PostgreSQL 자연 정렬

1 개요

기본 정렬 아이디어

  • 기준1: 문자만 추출하여 정렬
  • 기준2: 숫자만 추출하여 정렬

2 Oracle

SELECT * FROM 테이블 ORDER BY TO_NUMBER(REGEXP_SUBSTR(컬럼명,'^[0-9]+')), TO_NUMBER(REGEXP_SUBSTR(컬럼명,'[0-9]+$'));

3 PostgreSQL

SELECT * FROM 테이블 ORDER BY SUBSTRING(컬럼명 FROM '[^0-9]+'), SUBSTRING(컬럼명 FROM '([0-9]+)')::INTEGER;

4 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}