在 Nestjs/Express 中,任何 WHERE ANY 查询都可以正常工作:
const sql = 'SELECT * FROM members WHERE '+ integerId + ' = ANY(skill_id_array)';
const membersBySkill = await this.entityManager.query(sql
这个WHERE IN查询失败了,并显示了本帖的标题错误信息:
const sql = 'SELECT * FROM members WHERE '+ integerId + ' IN (skill_id_array)';
const membersBySkill = await this.entityManager.query(sql);
我理解的SQL中IN和ANY应该是几乎相同的查询,结果也几乎相同。
integerId is a var integer such as 2.
skill_id_array in Postgres looks like this: {1,2,5}
为什么会出现这个错误?我正在使用一个整数在一个整数数组的列中进行搜索。
' IN (unnest(skill_id_array))'
,我会得到一个错误:argument of IN must not return a set
。 - Preston