如何在数组输入时从mysql查询中获取重复值?
我有一个查询,我给它一个项目列表作为输入,项目列表包含重复的值如何在数组输入时从mysql查询中获取重复值?,mysql,sql,Mysql,Sql,我有一个查询,我给它一个项目列表作为输入,项目列表包含重复的值 select * from ITEM where ITEM_NUMBER in ('15','41', '15','41'); 结果输出包含2行,其中 第15项 及 41 我需要一个查询,返回4行重复值。这是使用join的一个选项: select * from ITEM where ITEM_NUMBER in ('15','41', '15','41'); select * from items a join (selec
select * from ITEM where ITEM_NUMBER in ('15','41', '15','41');
结果输出包含2行,其中
第15项
及
41
我需要一个查询,返回4行重复值。这是使用join的一个选项:
select * from ITEM where ITEM_NUMBER in ('15','41', '15','41');
select *
from items a
join (select item_number
from items
group by item_number
having count(*) > 1) b
on a.item_number = b.item_number;
根据本链接中的答案改编:
这里有一个使用UNION和TOP的解决方案
select * from
(select top 2 * from item where item_number=15)
union all select * from
(select top 2 * from item where item_number=41);
使用
左联接
而不是中的。使用set集合存储值。然后迭代集合创建查询文本