1
我已经知道怎么算的话这样的每一行:如何总结所有字计数的MySQL
SELECT *,
IF(words <> '', (length(words)-length(replace(words,' ',''))+1), 0) AS words_count
FROM table
但现在我需要从所有行SUM所有罪状。
我该怎么做?
谢谢大家。
我已经知道怎么算的话这样的每一行:如何总结所有字计数的MySQL
SELECT *,
IF(words <> '', (length(words)-length(replace(words,' ',''))+1), 0) AS words_count
FROM table
但现在我需要从所有行SUM所有罪状。
我该怎么做?
谢谢大家。
如果你想的总和,使用聚合查询:
SELECT sum(if(words <> '', (length(words)-length(replace(words,' ',''))+1), 0)) AS words_count
FROM table;
编辑:
如果没有行,你可以做到这一点,以避免NULL值:
SELECT coalesce(sum(if(words <> '', (length(words)-length(replace(words,' ',''))+1), 0)), 0) AS words_count
FROM table;
谢谢你@Gordon Linoff我已经尝试过了,但在某些情况下,我甚至没有注意到价值。现在我知道为什么。因为如果没有行,它将返回NULL – Pedro