在项目的数据库表中有一个字段,这个字段可以有多个值,关系为“或”的关系并且以多条记录存在于表中。在查询这样的记录时如果是简单的查询会出现多条查询结果,而业务上需要只显示为一条记录。这是一个难题,不过在也sql中也是可以解决的。示例:saleid为要查的字段,以valueid为条件,valueid存在多个值,要使得查询结果显示为一条记录。sql语句如下。
select saleid
from Product_Relation
where valueid=13
or valueid=30
or valueid=268
group by saleid
having count(saleid)=3
注:group by后的列不能包含作为条件查询的列