日期:2014-05-16  浏览次数:20835 次

mysql查询:怎样不创建新表找出匹配的集合?
例如: select 100 in (select id from table1)

结果如果存在是1, 不存在是0

我现在想做一个query, 把一个id集合(100,101,102...)传入, 像这样

select 100,101,102,103,104 in (select id from table1)

明显这个语句的结果是100,101,102,103是列, 104 in (select id from table1)的结果是另一列了,不是我想要的.

我要的是返回匹配的ID集合, 例如100,101是匹配的,查询结果看起来像:

100
101


谢谢.

------解决方案--------------------
select id from table1 where find_In_set(id ,'100,101,102,103,104');
------解决方案--------------------
无法用到索引,将传入内容存入表中字段,在此字段上建立索引,再与工作表连接