标题:sql case when 问题
只看楼主
lgp740401_72
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2014-4-17
结帖率:100%
 问题点数:0 回复次数:4 
sql case when 问题
SELECT     item, prthick, prwidth, prlongth, setpic, set1pic, set2pic, set3pic, set4pic, setcab, xjtrue, Zktrue, sj1s AS qc1s, sj2s AS qc2s, sj3s AS qc3s, sj4s AS qc4s,zkqc = (CASE WHEN Zktrue = .f. THEN 0 ELSE sjjc - sjzk END), pqqc = (CASE WHEN Zktrue = .f. THEN sjjc - sjpq ELSE sjzk - sjpq END) FROM TB_生产跟踪表_B
老是报then附近有语法错误?请教各位大侠。
但在SQL中它改为这样了:SELECT     item, prthick, prwidth, prlongth, setpic, set1pic, set2pic, set3pic, set4pic, setcab, xjtrue, Zktrue, sj1s AS qc1s, sj2s AS qc2s, sj3s AS qc3s, sj4s AS qc4s,(CASE WHEN Zktrue = 'false' THEN 0 ELSE sjjc - sjzk END) as zkqc, (CASE WHEN Zktrue = 'false' THEN sjjc - sjpq ELSE sjzk - sjpq END)as  pqqc FROM TB_生产跟踪表_B

[ 本帖最后由 lgp740401_72 于 2014-5-4 12:48 编辑 ]
2014-05-04 11:52
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
得分:0 
.f.  有这么写的吗?

大家都是朋友,有空就来坐坐!
2014-05-08 13:28
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
得分:0 
啥程序这样的写法?

大家都是朋友,有空就来坐坐!
2014-05-08 13:28
mxbing1984
Rank: 7Rank: 7Rank: 7
来 自:贵州道真
等 级:贵宾
威 望:37
帖 子:73
专家分:342
注 册:2014-8-8
得分:0 
你的Zktrue是类型啊,你这是判断真假
估计是
CASE WHEN Zktrue = '.F.' THEN 0 ELSE sjjc - sjzk END
或者
CASE WHEN Zktrue = 0 THEN 0 ELSE sjjc - sjzk END
关键是看你Zktrue在数据库的类型

[ 本帖最后由 mxbing1984 于 2014-8-28 14:29 编辑 ]

天再高,踮起脚尖就能更接近阳光
2014-08-28 14:24
wmcwww
Rank: 2
等 级:论坛游民
威 望:1
帖 子:60
专家分:21
注 册:2012-11-2
得分:0 
如果Zktrue = 0 说明Zktrue是数值型变量,不能再写Zktrue = .F.;或者如果可以Zktrue = .F.,说明Zktrue是逻辑变量,不能写Zktrue = 0 。
2014-09-16 11:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-430972-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.214160 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved