说我有这个数据集“CONTAINS”是否有任何MySQL聚合函数?
user | group --------+------- [email protected] | A [email protected] | B [email protected] | A [email protected] | B [email protected] | A [email protected] | B [email protected] | C
我想这个转换成像这样的表:
user | IN_A | IN_B | IN_C --------+-------+-------+------- [email protected] | TRUE | TRUE | FALSE [email protected] | TRUE | FALSE | FALSE [email protected] | FALSE | TRUE | FALSE [email protected] | TRUE | TRUE | TRUE
我有:
SELECT user, IF(LOCATE('A', GROUP_CONCAT(group)) > 0, TRUE, FALSE) AS IN_A, IF(LOCATE('B', GROUP_CONCAT(group)) > 0, TRUE, FALSE) AS IN_B, IF(LOCATE('C', GROUP_CONCAT(group)) > 0, TRUE, FALSE) AS IN_C FROM users GROUP BY user
我想知道是否有更好的方法来知道一个聚合字段是否包含一个值,或者如果这是唯一的方法?
精美的作品! – 2016-09-14 22:13:11