周一至周五 : 08:30 - 17:30 客服专员电话/微信:17301649370 QQ:2902102332
微信咨询

扫码微信咨询

关注公众号

关注微信公众号

电话: 021 5161 9370
返回顶部
CASE WHEN的使用方法
显示全部楼层 正序浏览 发表日期 2014-09-25 09:43:30 12196次阅读 14次回复
本帖最后由 hessen 于 2014-9-25 09:51 编辑

CASE WHEN有两种类型的句式,下面介绍一种:


CASE WHEN  第一个条件 THEN 显示第一个结果
     WHEN  第二个条件 THEN 显示第二个结果  
     ......
     ELSE  显示其他结果
END  

应用在快表中如:
CASE WHEN [产品信息表_主表].[适用车型] ='' AND [产品信息表_主表].[规格型号] ='' THEN ''
        WHEN [产品信息表_主表].[适用车型] ='' THEN [产品信息表_主表].[规格型号]
        WHEN [产品信息表_主表].[规格型号] ='' THEN [产品信息表_主表].[适用车型]
        ELSE [产品信息表_主表].[规格型号]+ '(' + [产品信息表_主表].[适用车型] + ')'
END

如果是提取公式 将上面的整个语句块写入来源字段的位置
电话/微信:18049989370 QQ:857188287
这个函数好强大,打卡 学习
genetc

2017-10-23 15:49:13

又涨姿势了
标记一下,用的上
monvzhilei

2016-4-10 09:06:12

写得好,学习了。
来自: 微社区
我来贴一名我写的,用有免费版中的,供各位参考
SELECT 排除重复 [用户信息表_主表].[区域名称] AS 本报表.[_明细表].[区域]x填充不锁定,
count([用户信息表_购买明细表].[购买版本]) AS 本报表.[_明细表].[总销售]x填充不锁定,
合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] =  '2015' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2015]x填充不锁定,
合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] = '2013' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2011]x填充不锁定,
  合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] = '2003' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2003]x填充不锁定
FROM  [用户信息表_主表] LEFT JOIN [用户信息表_购买明细表] On [用户信息表_主表].[报表ID] = [用户信息表_购买明细表].[报表ID] group by [用户信息表_主表].[区域名称]
nickybin

2014-11-20 17:29:03

好的 学习 记录
海上垂钓 发表于 2014-11-12 21:13
WHEN 条件1 AND (条件2 OR 条件3)THEN 结果
可不可以这样写的?

可以。
联系QQ:1327452797
WHEN 条件1 AND (条件2 OR 条件3)THEN 结果
可不可以这样写的?

精彩评论14

这个函数好强大,打卡 学习
genetc

2017-10-23 15:49:13

又涨姿势了
标记一下,用的上
monvzhilei

2016-4-10 09:06:12

写得好,学习了。
来自: 微社区
我来贴一名我写的,用有免费版中的,供各位参考
SELECT 排除重复 [用户信息表_主表].[区域名称] AS 本报表.[_明细表].[区域]x填充不锁定,
count([用户信息表_购买明细表].[购买版本]) AS 本报表.[_明细表].[总销售]x填充不锁定,
合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] =  '2015' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2015]x填充不锁定,
合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] = '2013' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2011]x填充不锁定,
  合计(CASE WHEN  [用户信息表_购买明细表].[购买版本] = '2003' THEN 1 ELSE 0 END ) As  本报表.[_明细表].[版本号2003]x填充不锁定
FROM  [用户信息表_主表] LEFT JOIN [用户信息表_购买明细表] On [用户信息表_主表].[报表ID] = [用户信息表_购买明细表].[报表ID] group by [用户信息表_主表].[区域名称]
nickybin

2014-11-20 17:29:03

好的 学习 记录
海上垂钓 发表于 2014-11-12 21:13
WHEN 条件1 AND (条件2 OR 条件3)THEN 结果
可不可以这样写的?

可以。
联系QQ:1327452797
WHEN 条件1 AND (条件2 OR 条件3)THEN 结果
可不可以这样写的?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则  允许回帖邮件提醒楼主

快表软件是国内较早研究表格类软件开发平台的团队之一,迄今已有十多年的行业经验.致力于为企事业单位提供实用可靠的数字化平台。
  • 微信公众号

  • 微信小商店

  • 微信客服

  • Powered by Discuz! X3.4 | Copyright © 2022-2024, XiRong Soft. | 快表软件
  • 沪ICP备13033196号 | 营业执照 |上海西戎软件科技有限公司|沪公网安备31011502002146号|沪ICP备13033196号 |