有桌子:
NAME GENRE
book1 genre1
book2 genre2
book3 genre1
book3 genre2
book4 genre1
etc
因此,我们可以有一本书,只包含一种或多种类型。 我想从该表中获得该表
NAME GENRE
book1 genre1
book2 genre2
book3 mixed_genres
book4 genre1
因此,在新表格中,如果这本书只有一种流派,我们将保留此流派,如果这本书有很多流派,我们将通过“ mixed_genres”更改流派值。
有什么办法可以做到这一点? 非常感谢您的任何建议!
答案 0 :(得分:1)
您可以使用聚合:
select book,
(case when min(genre) = max(genre) then max(genre)
else 'mixed genres'
end) as genre
from t
group by book;
您还可以列出所有类型:
select book, group_concat(genre) as genre
from t
group by book;