MYSQL CASE THEN语句具有多个值 [英] MYSQL CASE THEN statement with multiple values
问题描述
我正在尝试使用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屋!