sql 查询语句,遇到这样的麻烦,select * from A where A_id in (1,1,2,2,3)
这样的查询语句实际执行的是select*fromAwhereA_idin(1,2,3),但是我想的到5条查询结构(其中1和2是重复的,3和4是重复的),应该怎样实现?...
这样的查询语句实际执行的是select * from A where A_id in (1,2,3),但是我想的到5条查询结构(其中1和2是重复的,3和4是重复的),应该怎样实现?
展开
3个回答
展开全部
你好,
select * from A where A_id in (1,1,2,2,3)=select * from A where A_id in (1,2,3)
这样的规则是没有任何问题的,如果你的数据表A表中的A_id中确实有5行数据,而A_id的值只有1,2,3 这三个数值并且数据行的其它列也是不一样的查出来就一定会是5行数据。如果你写的这个语句查不出5行数据那么请看看是否A表中存在相同值的行。
当然还有一种做法可以查询到5行值就是不要使用A_id而是使用5行值都不相同的列去做查询条件如:
select * from A where B=某某.... or B=某某这样的方式也可以
希望对你有所帮助!
select * from A where A_id in (1,1,2,2,3)=select * from A where A_id in (1,2,3)
这样的规则是没有任何问题的,如果你的数据表A表中的A_id中确实有5行数据,而A_id的值只有1,2,3 这三个数值并且数据行的其它列也是不一样的查出来就一定会是5行数据。如果你写的这个语句查不出5行数据那么请看看是否A表中存在相同值的行。
当然还有一种做法可以查询到5行值就是不要使用A_id而是使用5行值都不相同的列去做查询条件如:
select * from A where B=某某.... or B=某某这样的方式也可以
希望对你有所帮助!
追问
我不是说要用in,我不知道怎样达到我的目的,用这样得方式来表的我的需求?
追答
看了半天觉得你的思路出问题,除了我和下面 twvampire 的回答都可实现你想要的结果。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询