永发信息网

请帮助修正SQL语句错误,提示(,AS处有错误。

答案:2  悬赏:0  手机版
解决时间 2021-03-10 19:08
  • 提问者网友:几叶到寒
  • 2021-03-10 14:42
select a.WISBM,c.育妇姓名,c.丈夫姓名,a.现有男孩数,a.现有女孩数,a.末子出生日期,b.子女信息男孩数,b.子女信息女孩数
from (select WIS_MESSAGE.wisbm,WIS_MESSAGE.xynanhs as 现有男孩数,WIS_MESSAGE.xynvhs as 现有女孩数,WIS_MESSAGE.mzcsrq as 末子出生日期 from WIS_MESSAGE where WIS_MESSAGE.mzcsrq>='2010-10-1') a
LEFT JION
(select WIS_B_BIRTH.wisbm,
sum(case xb when '341' then 1 else 0 end) as 子女信息男孩数,
sum(case xb when '342' then 1 else 0 end) as 子女信息女孩数,
count(1) as 合计
from WIS_B_BIRTH
group by wisbm) as b
on a.WISBM=b.WISBM
LEFT JION (select WIS_MANAGE.WISBM,WIS_MANAGE.yfxm 育妇姓名,WIS_MANAGE.nzxm 丈夫姓名 from WIS_MANAGE,WIS_MESSAGE where WIS_MANAGE.wisbm=WIS_MESSAGE.WISBM) as c
on c.WISBM=b.wisbm
WHERe a.现有男孩数<>b.子女信息男孩数 OR a.现有女孩数<>b.子女信息女孩数

select a.WISBM,c.育妇姓名,c.丈夫姓名,a.现有男孩数,a.现有女孩数,a.末子出生日期,b.子女信息男孩数,b.子女信息女孩数
from (select WIS_MESSAGE.wisbm,WIS_MESSAGE.xynanhs as 现有男孩数,WIS_MESSAGE.xynvhs as 现有女孩数,WIS_MESSAGE.mzcsrq as 末子出生日期 from WIS_MESSAGE where WIS_MESSAGE.mzcsrq>=2010-

10-1) as a left jion (select WIS_B_BIRTH.wisbm,
sum(case xb when '341' then 1 else 0 end) as 子女信息男孩数,
sum(case xb when '342' then 1 else 0 end) as 子女信息女孩数,
count(1) as 合计
from WIS_B_BIRTH
group by wisbm) as b on b.WISBM=a.WISBM left jion (select WIS_MANAGE.WISBM,WIS_MANAGE.yfxm 育妇姓名,WIS_MANAGE.nzxm 丈夫姓名 from

WIS_MANAGE,WIS_MESSAGE where WIS_MANAGE.wisbm=WIS_MESSAGE.WISBM) as c on c.WISBM=b.wisbm
WHERe a.现有男孩数<>b.子女信息男孩数 OR a.现有女孩数<>b.子女信息女孩数
最佳答案
  • 五星知识达人网友:渡鹤影
  • 2021-03-10 15:00
select a.WISBM,c.育妇姓名,c.丈夫姓名,a.现有男孩数,a.现有女孩数,a.末子出生日期,b.子女信息男孩数,b.子女信息女孩数
from (select WIS_MESSAGE.wisbm,WIS_MESSAGE.xynanhs as 现有男孩数,WIS_MESSAGE.xynvhs as 现有女孩数,WIS_MESSAGE.mzcsrq as 末子出生日期 from WIS_MESSAGE where WIS_MESSAGE.mzcsrq>='2010-10-1') a
LEFT join
(select WIS_B_BIRTH.wisbm,
sum(case xb when '341' then 1 else 0 end) as 子女信息男孩数,
sum(case xb when '342' then 1 else 0 end) as 子女信息女孩数,
count(1) as 合计
from WIS_B_BIRTH
group by wisbm) as b
on a.WISBM=b.WISBM
LEFT join (select WIS_MANAGE.WISBM,WIS_MANAGE.yfxm 育妇姓名,WIS_MANAGE.nzxm 丈夫姓名 from WIS_MANAGE,WIS_MESSAGE where WIS_MANAGE.wisbm=WIS_MESSAGE.WISBM) as c
on c.WISBM=b.wisbm
WHERe a.现有男孩数<>b.子女信息男孩数 OR a.现有女孩数<>b.子女信息女孩数
全部回答
  • 1楼网友:风格不统一
  • 2021-03-10 16:08
二楼的回答是oracle中的写法,不适用于sql server sql server中应该这么写 update 表名 set 列名 = case when charindex(')',reverse(列名)) = 1 and charindex('(',列名) > 0 then left(列名,len(列名) - charindex('(',reverse(列名)))        else 列名        end不放心的话,可以先查询看一下结果 select case when charindex(')',reverse(列名)) = 1 and charindex('(',列名) > 0 then left(列名,len(列名) - charindex('(',reverse(列名)))        else 列名        end from 表名
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯