小弟在做一个web模糊查询,写一个sql模糊查询语句,遇到这个棘手问题,请大侠指点。
在页面上有多个复选框,代表不同的职务,例如:国家主席、军委主席、中央委员、人大代表等,这些职务好无关系啊,一个人可以同时具有多个职务,例如一个人即是国家主席,又是居委主席,这就是胡哥了。
现在要对具有这些职务的人进行查询,比如查询是人大代表的人,那我们可以这么写:select * from users u where 人大代表 in (select r.职务 from 职务关系表 r where u.id = r.userid);
那么如果选择两项和多项时,要找即是人大代表又是中央委员的人时,怎么写,请各位为小弟指点一下秘境,不胜感激。
select * from users u where (人大代表和中央委员) in (select r.职务 from 职务关系表 r where u.id = r.userid);
在页面上有多个复选框,代表不同的职务,例如:国家主席、军委主席、中央委员、人大代表等,这些职务好无关系啊,一个人可以同时具有多个职务,例如一个人即是国家主席,又是居委主席,这就是胡哥了。
现在要对具有这些职务的人进行查询,比如查询是人大代表的人,那我们可以这么写:select * from users u where 人大代表 in (select r.职务 from 职务关系表 r where u.id = r.userid);
那么如果选择两项和多项时,要找即是人大代表又是中央委员的人时,怎么写,请各位为小弟指点一下秘境,不胜感激。
select * from users u where (人大代表和中央委员) in (select r.职务 from 职务关系表 r where u.id = r.userid);
解决方案 »
- oracle函数返回表类型,定义的记录表可以插入数据吗?求教,在线等
- 在PLSQL Developer怎么调用函数
- Sybase与Oracle SQL语句问题,请各位大虾指点,“散分啊”
- sql语句:快速检索表中数据的行数
- 哪个函数 可以判断 是否可以使用to_number
- 郁闷中,关于order by 查询效率的问题。。。
- 请教sql数据(繁体)导入Oracle后,数据变成简体的方法
- oracle的连接问题!
- 利用IMP恢复问题,请指点,高分相送不够再给!问题解决马上给分!
- 这条SQL语句怎样写?
- A表到B表,插入多行数据遇到的问题[在线给分]
- 触发器中的循环问题,请教各位高人.[在线给分]
select * from users u where u.id=(select r.userid from 职务关系表 r where r.职务='国家主席' or r.职务='军委主席')
select userid from 职务关系表 r where r.职务 in ('国家主席','军委主席')
)这个就凑合着用吧
select u.* from users u where u.id in (
select userid from 职务关系表 r where r.职务 in ('国家主席','军委主席')
group by userid having count(*) = 2)