首頁 > 資料庫 > mysql教程 > 如何正確使用PostgreSQL的jsonb和Float類型進行算術運算?

如何正確使用PostgreSQL的jsonb和Float類型進行算術運算?

Barbara Streisand
發布: 2024-12-31 07:21:10
原創
589 人瀏覽過

How to Correctly Perform Arithmetic Operations with PostgreSQL's jsonb and Float Types?

解決PostgreSQL 的jsonb 到Float 轉換問題

當嘗試執行涉及PostgreSQL 的jsonb 類型和float 的算術類型和float遇到錯誤,因為鍵入不相容。特別是,以下查詢:

SELECT (json_data->'position'->'lat') + 1.0 AS lat FROM updates LIMIT 5;
登入後複製

將傳回錯誤「運算子不存在:jsonb numeric。」即使使用::float 語法明確轉換也會導致錯誤「運算子不存在:jsonb 雙精確度。運算子語法來提取所需的值,如下所示文字而不是 JSON。 ->>傳回文字的運算子可以如下使用:

透過使用->>運算子將緯度值提取為文本,然後使用者可以將其轉換為浮點數並執行所需的算術運算,而不會有任何錯誤。該技術允許在 PostgreSQL 中高效處理 jsonb 資料類型。
SELECT (json_data->'position'->>'lat')::float + 1.0 AS lat
FROM updates
LIMIT 5
登入後複製

以上是如何正確使用PostgreSQL的jsonb和Float類型進行算術運算?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板