首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >案例陈述MySql

案例陈述MySql
EN

Stack Overflow用户
提问于 2016-12-22 11:37:36
回答 3查看 57关注 0票数 1

我试图为下表结构编写一个案例语句:

代码语言:javascript
复制
========================================
tender_cust_shortcode | open_auth_date
========================================
HAL Hydera            |   24-01-2016
DRDL                  |   NULL
HAL ARDC              |   10-02-2016
DLRL                  |   NULL
ISAC                  |   NULL
========================================

我的案例陈述如下:

代码语言:javascript
复制
CASE WHEN (tender_cust_shortcode = 'HAL Hydera' OR 'HAL ARDC') THEN 'N/A'
     WHEN (tender_cust_shortcode != 'HAL Hydera' OR 'HAL ARDC') AND open_auth_date IS NULL 
THEN 'Pending'  
ELSE 'Completed' END AS `Open Auth Status`

标准是

1)如果(tender_cust_shortcode =‘Hydera’或'HAL‘),则其结果应为'N/A’。

2)如果(tender_cust_shortcode !=‘Hydera’或'HAL‘)和open_auth_date为空,则其结果应为“未决”。

3)其他“已完成”。

我没有得到想要的输出。可能是和或条件问题。有人能帮我吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-12-22 12:09:10

尝试使用IN,不确定这是否有效,但是尝试一下:

代码语言:javascript
复制
CASE
    WHEN tender_cust_shortcode IN ('HAL Hydera', 'HAL ARDC') THEN 'N/A'
    WHEN tender_cust_shortcode NOT IN ('HAL Hydera', 'HAL ARDC') AND open_auth_date IS NULL THEN 'Pending'  
    ELSE 'Completed'
END AS `Open Auth Status`

这是SQLFiddle演示,它起作用了。

票数 1
EN

Stack Overflow用户

发布于 2016-12-22 11:39:32

您必须重复列名,并且必须由AND连接的或不相等条件

代码语言:javascript
复制
CASE WHEN (tender_cust_shortcode = 'HAL Hydera' OR tender_cust_shortcode = 'HAL ARDC') THEN 'N/A'
     WHEN (tender_cust_shortcode != 'HAL Hydera' AND tender_cust_shortcode != 'HAL ARDC') AND open_auth_date IS NULL 
THEN 'Pending'  
ELSE 'Completed' END AS `Open Auth Status`

请参阅SQLFiddle

票数 0
EN

Stack Overflow用户

发布于 2016-12-22 11:54:35

尝试这样的查询:

代码语言:javascript
复制
SELECT CASE WHEN (tender_cust_shortcode = 'HAL Hydera' OR 'HAL ARDC') THEN 'N/A'
WHEN ((tender_cust_shortcode != 'HAL Hydera' OR 'HAL ARDC') AND (open_auth_date IS NULL)) THEN 'Pending'
ELSE 'Completed' END FROM `test`
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41282295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档