我试图做一个左连接上两个表hstore列:postgres左加入在hstore上使用正则表达式?
SELECT
d.context->'hostname' AS hostname,
r.data->'Site' AS site,
r.data->'Region' AS rack,
r.data->'Manufacturer' AS vendor,
r.data->'ModelNumber' AS model_number,
FROM dns AS d
LEFT JOIN rack AS r ON
d.context->'hostname' ~ r.context->'Name'
;
其中两个dns
和rack
有两个hstore列context
和data
;左连接的条件是rack.context->'Name'
可能只包含fqdn'd dns.context->'hostname'
的一部分。
然而,当我尝试了上面,我得到
ERROR: operator does not exist: text ~ hstore
什么想法?
什么postgres版本?可能是运营商的优先事项?你有没有尝试在两个hstore查找周围放置圆括号以确保它们都是字符串(如果这是你想要的) – 2013-04-22 17:40:29