mysql查询语句求助

SELECT

    c.AgentCompanyName,

    a.ProjectName,

    a.xiangmugenjinjieduan

FROM

    w_swprojectinfo a

left JOIN w_agentcompany c ON a.AgentCompanySN = c.SN

WHERE

    a.DanweiShuxing REGEXP "B"

    AND a.blei = "B+"

====================

从上面的语句查询到下图,如何优化语句,如果该人只要有一个项目含有“竣工,完工,在建”,则该人不进行显示,求教

image.png

image.png

SQL saitey 发布于 2024-8-15 16:25 (编辑于 2024-8-15 16:30)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
华莉星宸Lv7资深互助
发布于2024-8-15 16:27

第一个  先查出含有竣工,完工,在建这几个状态的人

第二步  过滤掉这些人就行了

最佳回答
0
CD20160914Lv8专家互助
发布于2024-8-15 16:33(编辑于 2024-8-15 16:36)

select a.* from testaa a

join (

select 

myname,

case when instr(group_concat(状态),'竣工')>0 

or when instr(group_concat(状态),'在建')>0

or when instr(group_concat(状态),'完工')>0

then 1 else 0 end as 字段判断

from testaa 

group by myname) b on a.myname=b.myname

where b.字段判断=0

截图只是告诉你拼起来后判断关键字就可以的。

image.png

  • saitey saitey(提问者) 有点看不懂,能不能帮我替代下我的语句
    2024-08-15 16:45 
  • CD20160914 CD20160914 回复 saitey(提问者) 你的语句哪个字段对应你截图的哪一列我不知道。。
    2024-08-15 16:55 
  • saitey saitey(提问者) c.AgentCompanyName (人名), 第1列 a.ProjectName(项目名称),第3列 a.xiangmugenjinjieduan (阶段) 第4列
    2024-08-15 16:59 
  • 3关注人数
  • 190浏览人数
  • 最后回答于:2024-8-15 16:36
    请选择关闭问题的原因
    确定 取消
    返回顶部