关于sql 查询语句select
如上表,我想把A字段先做分组,如上表可以分两组111和222,我想select出分组中如果B字段不含d数据的结果集。如上表,要返回的是222。...
如上表,我想把A字段先做分组,如上表可以分两组111和222,我想select出分组中如果B字段不含d数据的结果集。如上表,要返回的是222。
展开
3个回答
展开全部
select distinct A from table_name
where instr(b,'d') <=0 ;
instr()是判断b字段是否含有‘d’字符,含有的话 会返回所在位置,不含d的话 值是0;
where instr(b,'d') <=0 ;
instr()是判断b字段是否含有‘d’字符,含有的话 会返回所在位置,不含d的话 值是0;
追问
可能我描述不好,我意思是相同分组中,只要有一条记录的B字段有'd',就剔除。比果,111分组中,第五条记录B字段是'd',那就剔除所有111的记录。222分组中四条记录的B字段都没有‘d’,就返回222(返回结果集只要A字段的数据)
追答
select distinct A from table_name tn1,table_name tn2
where
tn1.A=tn2.A
and
Not EXISTS(slect 1 from table_name where instr(tn2.B,'d')>0);
写得复杂了。。。
楼上的简单些
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SELECT ......FROM ......
WHERE C NOT LIKE"%d%"
WHERE C NOT LIKE"%d%"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询