首页 > 解决方案 > 如何在 Mysql 查询中根据不同的枚举类型获取特定的列?

问题描述

我有一个 Enum 列 - 例如:deviceType; 在一个包含 8 个不同枚举值的表中。如何获取列 - 例如 - imeiId 和 macId;基于价值观。例如,根据 4 个枚举值获取 ImeiId,根据其他 4 个枚举值获取 MacId。注意:所有列都在同一个表中。

标签: mysqlsqlhibernateenums

解决方案


SELECT CASE WHEN deviceType IN ('a','b','c','d') THEN imeiId
            WHEN deviceType IN ('e','f','g','h') THEN maclId
       END AS deviceId
FROM mytable ...

阅读CASE 表达式


推荐阅读