MYSQL CASE THEN语句具有多个值 [英] MYSQL CASE THEN statement with multiple values

查看:879
本文介绍了MYSQL CASE THEN语句具有多个值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用CASE语句选择多个值.我注意到我们不能做

I am trying go select multiple values with CASE statement. I noticed we cannot do

CASE 
    WHEN wall.type="bk" 
    THEN books.id1,books.id2, // and so on
END as column_1,

是否有一种方法可以对多列执行THEN还是只需要编写一堆CASE THEN语句?看起来很乱

Is there a way to do THEN with multiple columns or do we need to simply write a bunch of CASE THEN statements? that seems messy

推荐答案

不,它只是一个值.另外,使用多列"并将这些多列命名为column_1是矛盾的,对吗? :)

No, it is just a single value. Additionally, it is contradictory to use "multiple columns" and name those multiple columns as column_1, right? :)

您可以使用另一列来存储另一个ID(具有类似的情况),并使用空值来表示else值,就像您现在所做的那样.

You can use another column to store the other id with (a similar case) and use nulls to represent the else values, just like you're doing now.

示例:

CASE 
    WHEN wall.type="bk" 
    THEN books.id1
END as column_1,
CASE 
    WHEN wall.type="bk" 
    THEN books.id2
END as column_2

查看官方文档以获取更多信息.

Check the official documentation for more information.

这篇关于MYSQL CASE THEN语句具有多个值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆