有这样一个表,表名为e
表结构及记录如下:
e_id ps_id
1 ,1,6,
2 ,2,3,
3 ,4,5,
4 ,3,7,ps_id中存的1 2 3 4...比如说是产品的id,现在我想把负责(,1,2,3,4,5,)五种产品中的任意组合的e_id找出来,上表中,也就是找出e_id为2和3的两条记录。
String p_id = ",1,2,3,4,5,";
我试过了,用like 和in 好象都不行,我用的数据库是MySql,请各位大侠帮忙解决!谢谢!
表结构及记录如下:
e_id ps_id
1 ,1,6,
2 ,2,3,
3 ,4,5,
4 ,3,7,ps_id中存的1 2 3 4...比如说是产品的id,现在我想把负责(,1,2,3,4,5,)五种产品中的任意组合的e_id找出来,上表中,也就是找出e_id为2和3的两条记录。
String p_id = ",1,2,3,4,5,";
我试过了,用like 和in 好象都不行,我用的数据库是MySql,请各位大侠帮忙解决!谢谢!
解决方案 »
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
- 新人求教一个关于classloader动态加载类并实例化得问题的问题
- 关于动态绑定和方法的重写的问题。。请指导下。。
- 在线等知道的大哥们回答!为什么这句话没有执行啊!!!!
- 为什么这段异常的代码不合法
- 数据库连接的问题
- 发现一个现象 关于Parent child = new child()
- !!!操作数据库是出现:将截断字符串或二进制数据?帮忙!!!!!!!!!!!!
- 线程的理解!!
- 能不能推荐一些关于Java算法复杂度的书?
- 怎么将数据写入一个xml文档??
- 文件大的时候读取其内容出现了sun.io.MalformedInputException异常
比较笨的方法,估计还有更好的
要找出只有12345的,
上面的那个方法不行应该把字符串按照,来split之后,再判断是否在1,2,3,4,5里面,不过我也不知道如何写这个sql,
to masse(当午) :不是这样的,一条记录的ps_id里只可能有一个1或2或...., ps_id里存的是多种产品的id,每一种前后都有逗号,比如说e_id=2的这条记录,ps_id里存了两种产品:2和3,这两种产品的前后都有逗号(,2,3,)。
现在我要把ps_id属于(,1,2,3,4,5,)中任何一种组合的记录找出来,也就是找出上表中e_id为2和3的两条记录。
select e_id,ps_id from e where substring(ps_id,2,length(ps_id)-2) in (1,2,3,4,5);
谢谢各位!