我有这个代码:
SELECT category.category_id, SUM(
CASE(category.parent_id)
WHEN 0
THEN category_description.name
ELSE 0
END
)
AS category_main
FROM category
LEFT JOIN category_description ON category_description.category_id = category.category_id
GROUP BY category.category_id;
输出在category_main中给出0
category_id category_main
1 0
2 0
3 0
4 0
我想要的是获取类别的名称,因为category_description.name包含类别的名称。
我想要的结果是:
category_id category_main
1 Toys
2 Gifts
3 Cars
4 For men
最佳答案
SUM
用于数值。对于您想要的结果,看起来一个简单的选择就可以了:
SELECT
c.category_id,
CASE c.parent_id WHEN 0 THEN d.name END as category_main
from category c
LEFT JOIN category_description d
ON d.category_id = c.category_id
关于mysql - SQL CASE SUM 给我 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22672921/