以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于SQLCompute表达式问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=48936)

--  作者:南望
--  发布时间:2014/4/9 10:10:00
--  关于SQLCompute表达式问题
新建一个表达式列,表达式为:IIF([统计单位] = \'每份\' ,[单价] * [工作量],[单价] / 1000 * [工作量]),我想用SQLCOMPUTE来统计这表达式列的合计值,应该如何写?(因这其中含有两种情况的表达式,所以不知道应该怎么写)
--  作者:Bin
--  发布时间:2014/4/9 10:11:00
--  
你是SQL数据源还是ACCESS数据源呢?
--  作者:南望
--  发布时间:2014/4/9 10:16:00
--  
SQL的
--  作者:Bin
--  发布时间:2014/4/9 10:23:00
--  
CurrentTable.DataTable.SQLCompute("sum(case when 统计单位=\'每份\' then (单价*工作量) else then (单价 / 1000 * 工作量) end )")


--  作者:南望
--  发布时间:2014/4/9 10:47:00
--  
还可以这么写啊,试了一下提示:“关键字 \'then\' 附近有语法错误。”
--  作者:南望
--  发布时间:2014/4/9 10:49:00
--  
去掉THEN就好使了,谢谢BIN老师,问题解决。
--  作者:Bin
--  发布时间:2014/4/9 10:49:00
--  
.SQLCompute("sum(case when 统计单位=\'每份\' then (单价*工作量) else (单价 / 1000 * 工作量) end )")