Oracle 자연정렬, PostgreSQL 자연정렬


natural ordering on Oracle
natural ordering on PostgreSQL
Oracle 자연 정렬, PostgreSQL 자연 정렬

개요

기본 정렬 아이디어

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

Oracle

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

PostgreSQL

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

같이 보기