> 데이터 베이스 > MySQL 튜토리얼 > PostgreSQL에서 JSONB를 Float로 올바르게 변환하는 방법은 무엇입니까?

PostgreSQL에서 JSONB를 Float로 올바르게 변환하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2025-01-02 18:37:43
원래의
189명이 탐색했습니다.

How to Correctly Convert JSONB to Float in PostgreSQL?

PostgreSQL 9.4에서 JSONB를 부동 소수점으로 변환

PostgreSQL 사용자가 다음 쿼리를 사용하여 jsonb 열을 부동 소수점 열로 변환하려고 시도했습니다.

SELECT (json_data->'position'->'lat') + 1.0 AS lat FROM updates LIMIT 5;
로그인 후 복사

그러나 그들은 오류:

ERROR:  operator does not exist: jsonb + numeric
로그인 후 복사

이 문제를 해결하기 위해 사용자가 ::float 연산자를 사용하여 명시적 캐스팅을 시도하여 오류가 발생했습니다.

ERROR:  operator does not exist: jsonb + double precesion
로그인 후 복사

jsonb 값을 부동 소수점으로 변환하려면 다음과 같습니다. 올바른 연산자 우선 순위를 따르는 것이 중요합니다. -> 연산자는 JSON 값을 반환하고 ->> 연산자는 텍스트 값을 반환합니다. 플로팅으로 성공적으로 캐스팅하려면 ->> 연산자입니다.

올바른 쿼리 구문은 다음과 같습니다.

SELECT (json_data->'position'->>'lat')::float + 1.0 AS lat FROM updates LIMIT 5;
로그인 후 복사

->> 연산자를 사용하면 jsonb 값이 먼저 텍스트로 변환된 다음 ::float 연산자를 사용하여 부동 소수점으로 변환될 수 있습니다.

위 내용은 PostgreSQL에서 JSONB를 Float로 올바르게 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿