首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用例与合并

用例与合并
EN

Stack Overflow用户
提问于 2015-07-01 12:48:15
回答 2查看 1.7K关注 0票数 2

这个语法只会给我一个毫无帮助的错误

不正确的语法

我应该更新什么来迫使它显示结果?

代码语言:javascript
复制
SELECT COALESCE(case when
            mentorname LIKE '%Med%' THEN 'MedTronics' end
            mentorname LIKE '%Zi%' THEN 'Zinamice' end
            , 'Total') As [Prov Source]

来自database1

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-01 12:53:10

试试这个:

代码语言:javascript
复制
SELECT COALESCE(CASE 
                    WHEN mentorname LIKE '%Med%' 
                        THEN 'MedTronics'
                    WHEN mentorname LIKE '%Zi%' 
                        THEN 'Zinamice' 
               END
            , 'Total') As [Prov Source]

尽管您可以简化查询,完全摆脱COALESCE,只留下CASE

代码语言:javascript
复制
SELECT
    CASE 
        WHEN mentorname LIKE '%Med%'
            THEN 'MedTronics'
        WHEN mentorname LIKE '%Zi%'
            THEN 'Zinamice'
        ELSE 'Total'
    END AS [Prov Source]
票数 7
EN

Stack Overflow用户

发布于 2015-07-01 13:01:45

为了保持简单,您可以使用嵌套的CASE语句完成相同的任务,并且完全避免使用COALESCE .

代码语言:javascript
复制
SELECT 
    [Prov Source] = 
        CASE WHEN mentorname LIKE '%Med%' THEN 
            'MedTronics' 
        ELSE
            CASE WHEN mentorname LIKE '%Zi%' THEN 
                'Zinamice' 
            ELSE
                'Total'
            END
        END
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31161771

复制
相关文章

相似问题

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