본문 바로가기

dev

[postgresql] IP주소 정렬할 때

IP주소를 db에서 읽을 때 order by 를 사용하면

 

생각한 대로가 아닌 1부터 순서대로 정렬이 된다

 

다른 db엔 IP관련해 별다른 기능이 없어 parsename같은 함수를 사용해 일일히 작업해줘야하지만

 

postgresql에는 inet 이라는 ip전용 데이터type이 존재한다

 

그래서 db를 만들 때 형식을 inet으로 지정하거나

 

varchar 형식을 불러오면서 order by inet(ip_address) 처럼 형변환을 선언해주기만 하면

정상적으로 정렬이 된다