我有一张桌子,在这里我需要对一些列值求和并将结果分组,但是如果单词字段为空,我需要查看最后一个单词值。
样品台
| id| cod | word | value |
| 1 | 1 | descr | 2 |
| 2 | 2 | texts | 3 |
| 3 | 1 | world | 5 |
| 4 | 1 | null | 4 |
| 5 | 2 | null | 4 |
从cod中选择*,sum(value)作为表组的总和给出此结果
| cod | word | suma |
| 1 | null | 11 |
| 2 | null | 7 |
但我需要这个结果:
| cod | word | suma |
| 1 | world | 11 |
| 2 | texts | 7 |
什么是正确的MySQL查询来做到这一点?
谢谢
最佳答案
如果您需要100%确保使用此功能:
SELECT cod, word, SUM(value) AS suma FROM test WHERE word IS NOT NULL GROUP BY cod
但:
我刚刚测试过。该表与您的表相同,查询与您提到的表相同。