这个语句有什么问题,请大家帮忙看看!!给50分

yyy431706 2003-08-20 06:16:48
sql="SELECT month(receive.sgsj) as month,sum(case when zrrd.fc1='未填' or zrrd.fc1='为空' then 0 else 1 end) as fc1 FROM zrrd INNER JOIN receive ON receive.ajbh=zrrd.ajbh WHERE year(receive.sgsj)='"&year&"' AND receive.cjr='"&cjr&"' group by month(receive.sgsj)"
...全文
72 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyy431706 2003-08-20
  • 打赏
  • 举报
回复
是iif(xx='xxx',1,0)
还是

if(xx='xxx',1,0)
究竟怎么用呀?
yyy431706 2003-08-20
  • 打赏
  • 举报
回复
试试看,我用的是access
能具体点吗?
pengdali(大力 V2.0)
非常感谢!
yyy431706 2003-08-20
  • 打赏
  • 举报
回复
还是不行啊,pengdali(大力 V2.0)再帮我看一看吧!谢谢
报错如下:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'

[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'sum(case when zrrd.fc1 not in ('未填','为空') then 1 end)' 中。

/work/index/fc_year.asp,行 23
pengdali 2003-08-20
  • 打赏
  • 举报
回复
access 不支持 case 函数

用iif(xx='xxx',1,0)
pengdali 2003-08-20
  • 打赏
  • 举报
回复
sql="SELECT month(receive.sgsj) as [month],sum(iif(zrrd.fc1<>'未填' and zrrd.fc1<>'为空',1,0) as fc1 FROM zrrd JOIN receive ON receive.ajbh=zrrd.ajbh WHERE year(receive.sgsj)='"&year&"' AND receive.cjr='"&cjr&"' group by month(receive.sgsj)"
pengdali 2003-08-20
  • 打赏
  • 举报
回复
sql="SELECT month(receive.sgsj) as [month],sum(case when zrrd.fc1 not in ('未填','为空') then 1 end) as fc1 FROM zrrd JOIN receive ON receive.ajbh=zrrd.ajbh WHERE year(receive.sgsj)='"&year&"' AND receive.cjr='"&cjr&"' group by month(receive.sgsj)"
yyy431706 2003-08-20
  • 打赏
  • 举报
回复
报错如下:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'

[Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'sum(case when zrrd.fc1='未填' or zrrd.fc1='为空' then 0 else clng(zrrd.fc1) end)' 中。

/work/index/fc_year.asp,行 23

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧