Я использую Presto. Я хочу назначить строку с несколькими «тегами», используя разные критерии, которые не являются взаимоисключающими.
Например, допустим, есть таблица с 4 столбцами:
| food | color | type | on_sale |
|------------+--------+-------------+---------|
| apple | red | fruit | TRUE |
| banana | yellow | fruit | FALSE |
| cornbread | yellow | baked goods | TRUE |
| apple pie | brown | baked goods | TRUE |
Я бы нравится отмечать каждую еду тегами, которые я определил, такими как red food
, red food on sale
, yellow baked goods
, yellow food on_sale
ТОЛЬКО. В этом примере яблоко соответствует двум тегам: red food
и red food on sale
.
Я не могу использовать CASE
(как показано ниже), потому что я получу «красную еду» только тогда, когда я действительно этого захочу помечены как оба.
CASE
WHEN color = 'red' THEN 'red food'
WHEN color = 'red' AND `on_sale` = TRUE THEN 'red food on sale'
(and so on)
В идеале я хочу вернуть массив, который может захватывать более 1 «тега» или дублировать столбцы с одной строкой для каждого тега, но я понятия не имею, как это сделать. Есть идеи?
Заранее спасибо!