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

SQL案例问题
EN

Stack Overflow用户
提问于 2010-03-28 19:16:47
回答 3查看 108关注 0票数 0

我不知道这是不是可以做到,但我想我会问一下。

我想要做的是有一个case语句查询,如果是1,则开始另一个操作。如果0什么也不做。

例如

代码语言:javascript
复制
select CASE WHEN client.deathofdeath = yes THEN 1 

        do another select in here (which is another table)

Else 0 End AS DeathDate

From Client client

这可以做到吗?

EN

回答 3

Stack Overflow用户

发布于 2010-03-28 19:19:34

而不是在CASE语句中。

如果您想执行这样的控制流操作,请改用If。@dateofDeath变量可以是声明并赋值的T-sql变量,也可以是SELECT语句本身。

代码语言:javascript
复制
IF @dateofDeath = 'yes' BEGIN
   do something
END ELSE BEGIN
   do something else
END
票数 3
EN

Stack Overflow用户

发布于 2010-03-28 20:01:01

你的意思是:如果某些东西是真的/存在于另一个表中,就做一些事情?

代码语言:javascript
复制
IF EXISTS (SELECT * FROM Client WHERE deathofdeath = yes)
   SELECT stuff FROM OtherTable
票数 0
EN

Stack Overflow用户

发布于 2010-03-30 10:17:33

就像unclepaul84说的,你可以这样做:

代码语言:javascript
复制
select
    CASE
        WHEN client.deathofdeath = yes THEN (select top 1 therow from othertable where clientid=clientid.clientid)
        Else 0
    End AS DeathDate
From
    Client client
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2532678

复制
相关文章

相似问题

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