【发布时间】:2017-02-16 09:35:02
【问题描述】:
SELECT *
FROM lookup_type
WHERE type_group = 'enquiry'
AND type_sub_group = 'category'
AND type_attribute IN (SELECT prod_id
FROM product
WHERE prod_id IN (SELECT option_prod_id
FROM product_option
WHERE option_id IN (SELECT link_option_id
FROM product_link
WHERE link_member_id = '146')));
在上面的查询中,我想在查找表中选择一条记录。但是我从我的 postgreSQL 客户端收到以下错误。
错误:运算符不存在:字符变化 = 整数
第 1 行:...uiry' 和 type_sub_group='category' 和 type_attr in(SELECT ...
^提示:没有运算符匹配给定的名称和参数类型。您可能需要添加显式类型转换。
type attr 是 varchar 列,prod_id 是整数列。
我做错了什么,我该如何解决?非常感谢您解释如何在未来避免这种情况。
【问题讨论】:
-
您为什么将苹果与橙子进行比较?将相同类型的信息存储为一个表中的 varchar 和另一个表中的整数是没有意义的。
标签: sql postgresql