mysql select *... where id in (select 字符串 from ... )查询结果问题?

SQL中的写法为

select id,TypeName from newcardtype where id in(select NewcardType from gamelist where id=43);

查询结果为:

id  TypeName 

1  新手

2  手机

在MYSQL中

select id,TypeName from newcardtype where id in(select NewcardType from gamelist where id=43);

查询结果为:

id  TypeName 

1  新手

少了一条数据.

其中

select NewcardType from gamelist where id=43

查询结果为

NewcardType 
1,2

问题就出在了子查询中.'1,2' 不会当作 1,2 来查询

可以使用 

select id,TypeName from newcardtype where  instr((select NewcardType from gamelist where id=43),id);

进行查询

查询结果为:

id  TypeName 

1  新手

2  手机

原文地址:https://www.cnblogs.com/mrma/p/3467882.html