我正在提取一个包含 2000 多行的表格,这些行是公园的详细信息。其中一列是 JSON 类型。桌子的图像
我们有大约 15 个这样的属性,并且我们还有分配给每个属性的预定代码的文档。
提取表中的每一行都有一组不同的属性,您可以在图像中看到这些属性。现在,我必须cast(parks.services AS text) AS "details"
获取特定公园的所有属性,或者使用以下代码仅提取其中一个:
CASE
WHEN cast(parks.services AS text) LIKE '%uncovered%' THEN '2'
WHEN cast(parks.services AS text) LIKE '%{covered%' THEN '1' END AS "details"
这一次,我需要通过为它们分配代码来提取这些属性。举个例子,让我们说
- 公园 1 - {covered, handicap_access, lift} 为 {1,3,7}
- 公园 2 - {uncovered, always_open, handicap_access} 为 {2,5,3}
我曾考虑过使用子查询来预先分配代码,但我无法完全理解 JSON 运算符——事实上,我不知道如何在 2000 多行中提取它们。
如果有人可以在这个主题上指导我,那将会很有帮助。非常感谢!