首頁 >資料庫 >mysql教程 >如何將 PostgreSQL JSONB 資料轉換為浮點型以進行數學運算?

如何將 PostgreSQL JSONB 資料轉換為浮點型以進行數學運算?

DDD
DDD原創
2024-12-29 14:48:11854瀏覽

How to Cast PostgreSQL JSONB Data to Float for Mathematical Operations?

將PostgreSQL JSONB 資料轉換為浮點

在PostgreSQL 中,嘗試使用JSONB 資料執行數學運算通常會導致錯誤,例如“運算符不存在”,當轉換為float 未明確指定。

要解決此問題,請考慮不同的JSON 值檢索運算子:

  • ->(箭頭運算子):以JSON 形式傳回JSON 值。
  • ->>(雙精確度)箭頭運算子):傳回文字值。

由於浮點數儲存為JSONB 中的文本,需要使用 ->> (雙箭頭)運算子在嘗試將浮點數轉換為浮點數之前提取浮點數的字串表示形式。

例如,考慮以下查詢:

SELECT (json_data->'position'->'lat')::float + 1.0 AS lat
FROM updates
LIMIT 5

這裡, -> (箭頭)運算子最初用於擷取 JSON 物件「位置」。 ->>然後使用(雙箭頭)運算子檢索「lat」的字串值。最後,使用 ::float 轉換運算子將字串轉換為浮點數。

透過利用適當的 JSON 值來擷取運算符,您可以在 PostgreSQL 查詢中成功將 JSONB 值轉換為浮點數。

以上是如何將 PostgreSQL JSONB 資料轉換為浮點型以進行數學運算?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn