gpt4 book ai didi

sql - 带有 LIKE 语句的 PostgreSQL hstore 列

转载 作者:行者123 更新时间:2023-11-29 14:17:08 24 4
gpt4 key购买 nike

我有一个测试数据库,其中有一个表 example,其中有一列 attributes 类型为 hstore:

行 1:weight=>'115', height=>'165'
行 2:问题 =>'权重'

因此,权重可以是键或值。

我想要选择语句,当我说 like %weight% 时,我会得到所有包含重量的记录。 Row1 和 row2,无论是 key 还是 value。它应该是这样的:

SELECT * 
FROM example
WHERE attributes like %weight%

如何使用 hstore 类型执行此操作?

最佳答案

一种方法是使用 条件:

SELECT * 
FROM example
WHERE attributes ? 'weight' -- contains the key
or 'weight' = any (avals(atributes)) -- is 'weight' contained in any value

另一种选择是使用 hstore_to_array() 函数将 hstore 转换为包含值和键的数组:

SELECT * 
FROM example
WHERE 'weight' = any (hstore_to_array(attributes))

关于sql - 带有 LIKE 语句的 PostgreSQL hstore 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44154817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com