Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menukar JSONB ke Terapung dengan betul dalam PostgreSQL?

Bagaimana untuk Menukar JSONB ke Terapung dengan betul dalam PostgreSQL?

Susan Sarandon
Lepaskan: 2025-01-02 18:37:43
asal
228 orang telah melayarinya

How to Correctly Convert JSONB to Float in PostgreSQL?

Penukaran JSONB kepada Terapung dalam PostgreSQL 9.4

Seorang pengguna PostgreSQL cuba menukar lajur jsonb kepada terapung menggunakan pertanyaan berikut:

SELECT (json_data->'position'->'lat') + 1.0 AS lat FROM updates LIMIT 5;
Salin selepas log masuk

Walau bagaimanapun, mereka menemui ralat:

ERROR:  operator does not exist: jsonb + numeric
Salin selepas log masuk

Untuk menyelesaikan isu ini, pengguna mencuba penghantaran eksplisit menggunakan operator ::float, mengakibatkan ralat:

ERROR:  operator does not exist: jsonb + double precesion
Salin selepas log masuk

Untuk menukar nilai jsonb kepada terapung, ia adalah penting untuk mengikut keutamaan pengendali yang betul. -> operator mengembalikan nilai JSON, manakala ->> operator mengembalikan nilai teks. Untuk berjaya menghantar ke terapung, anda perlu menggunakan ->> operator.

Sintaks pertanyaan yang betul ialah:

SELECT (json_data->'position'->>'lat')::float + 1.0 AS lat FROM updates LIMIT 5;
Salin selepas log masuk

Dengan menggunakan ->> pengendali, nilai jsonb mula-mula ditukar kepada teks, yang kemudiannya boleh dihantar ke terapung menggunakan operator ::float.

Atas ialah kandungan terperinci Bagaimana untuk Menukar JSONB ke Terapung dengan betul dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan