先上sql
SELECT * from person p
where p.uid=7 and p.`subject` in (SELECT `subject` from activity_settings where nid = 101);
这是一个很简单的sql,子查询的数据是39,41,43这种字符串类型的,但是这边就是不能获取相应的值,而假如子查询数据只有单个如39,就可以获取到数据,讨教高手
SELECT * from person p
where p.uid=7 and p.`subject` in (SELECT `subject` from activity_settings where nid = 101);
这是一个很简单的sql,子查询的数据是39,41,43这种字符串类型的,但是这边就是不能获取相应的值,而假如子查询数据只有单个如39,就可以获取到数据,讨教高手
解决方案
10
的博客:http://blog.sina.com.cn/s/blog_4d399df4010009zz.html
10
本人只能说 in是可以用于子查询是字符串类型的操作
10
为什么不直接把in 改成 =
10
本人试了下 用in是可以的