答案 0 :(得分:0)
我建议您查看一些注释并重新构建数据,因为我认为它会导致您的问题,但是这个查询会做您想要的但不是很好。
CTE测试:
WITH fruit_table(Fruit, No_Fruit)
AS (
SELECT 'Apple', 3
UNION ALL
SELECT 'Apples', 2
UNION ALL
SELECT 'Orange', 1
UNION ALL
SELECT 'oranges', 2)
查询:
SELECT DISTINCT
LOWER(CASE
WHEN right(fruit, 1) = 's'
THEN left(fruit, -1)
ELSE fruit
END),
SUM(No_Fruit)
FROM fruit_table
GROUP BY LOWER(CASE
WHEN right(fruit, 1) = 's'
THEN left(fruit, -1)
ELSE Fruit
END);
将有一种更优雅的方式来获得您想要的结果,更好的解决方案是修复您的架构,但......它的工作原理