如何将逗号分隔数转换为整数mysql查询GROUP_CONCAT

时间:2014-08-28 11:18:34

标签: mysql

我有逗号分隔的数字,例如 '46,95,44',这是从GROUP_CONCAT获得的输出

select GROUP_CONCAT (prodid) from tablename where condition;

我想将其转换为整数,以便我可以将其用作“in”操作的输入

select * from table2 where prodid in 
(
   select GROUP_CONCAT (prodid) from tablename where condition
);

以上查询结果仅基于逗号分隔列表中的第一个数字。如何将列表转换为整数

output :  46,95,44 

1 个答案:

答案 0 :(得分:1)

删除group_concat

select * from table2 
where prodid in 
(
  select prodid
  from tablename
  where condition
);

group_concat会生成带有ids的单个字符串,但您需要<{1}}子句的单独值。

使用IN,您的查询将编译为

group_concat

但你需要

select * from table2 
where prodid in ('46,95,44');