4
HTML에 사용 된 16 진수 문자열을 bigint
으로 변환하고 PL/pgSQL로 작성된 함수를 통해 Postgres의 R, G 및 B 값으로 변환하고 싶습니다.Postgres에서 16 진수 문자열을 bigint로 변환
bytea
로 문자열을 디코딩 할 수
:
hex bytea := decode(hex, 'hex');
그리고이 아름다움처럼 작동 고정 값으로 쿼리에서이 :
select (array[ (cast(x'ffaa33' as bigint) >> 16) % 256,
(cast(x'ffaa33' as bigint) >> 8) % 256,
cast(x'ffaa33' as bigint) % 256 ])
하지만 함께 두 가지를 넣을 수 없습니다 , 통과 - 예 : 'ffaa33'을 매개 변수로 사용합니다.
누구나 더 좋은 아이디어가 있습니까? PosgreSQL 9.1을 사용하고 있습니까?
다니엘에게 감사드립니다. bigint를 16 진수로 변환하는 방법? – Cherven
@Cherven : postgres에는 내장 to_hex (bigint) 함수가 있습니다. –