gpt4 book ai didi

mysql - Mysql如何结合选择条件?

转载 作者:行者123 更新时间:2023-11-29 12:37:23 24 4
gpt4 key购买 nike

例如,现在SELECT中有CASES:

CASE WHEN user.UsersTypeAccount IN (1,3) THEN detailtousers.DetailToUsersName
WHEN user.UsersTypeAccount IN (2) THEN medicalfacilities.MedicalFacilitiesName
END AS DetailToUsersName

CASE WHEN user.UsersTypeAccount IN (1,3) THEN detailtousers.idDetailToUsers
WHEN user.UsersTypeAccount IN (2) THEN medicalfacilities.MedicalFacilitiesIdUser
END AS idDetailToUsers

是否可以将这些情况结合起来:

    CASE WHEN user.UsersTypeAccount IN (1,3) THEN detailtousers.DetailToUsersName, 
detailtousers.idDetailToUsers
WHEN user.UsersTypeAccount IN (2) THEN medicalfacilities.MedicalFacilitiesName,
medicalfacilities.MedicalFacilitiesIdUser

最佳答案

不,这是不可能的。 case 返回单个值,而不是多个值。要重复逻辑,您需要重复 case 语句。

请注意,这在我所知道的所有数据库中都很常见。 MySQL(与其他数据库一样)在这方面符合标准。

我会注意到,如果您使用表名称缩写的表别名,则查询会更容易编写和阅读:

(CASE WHEN u.UsersTypeAccount IN (1, 3) THEN du.DetailToUsersName
WHEN u.UsersTypeAccount IN (2) THEN mf.MedicalFacilitiesName
END) AS DetailToUsersName

关于mysql - Mysql如何结合选择条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26572033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com