我需要添加每个记录中的字符数。
SELECT
CHAR_LENGTH(fiedl1) +
CHAR_LENGTH(fiedl2) +
CHAR_LENGTH(fiedl3) +
CHAR_LENGTH(fiedl4) +
CHAR_LENGTH(fiedl5) +
CHAR_LENGTH(fiedl6)
FROM mytable;
以上代码无效,因为如果字段包含空值,则返回空值。
最佳答案
您可以使用IFNULL控制流功能。
IFNULL(expr1,expr2)
如果expr1不为空,If NULL()返回expr1;否则返回expr2。IFNULL()返回数值或字符串值,具体取决于使用该值的上下文。
您的查询应该如下所示:
SELECT
IFNULL(CHAR_LENGTH(fiedl1), 0) +
IFNULL(CHAR_LENGTH(fiedl2), 0) +
IFNULL(CHAR_LENGTH(fiedl3), 0) +
IFNULL(CHAR_LENGTH(fiedl4), 0) +
IFNULL(CHAR_LENGTH(fiedl5), 0) +
IFNULL(CHAR_LENGTH(fiedl6), 0)
FROM mytable;
如果你有任何疑问,请告诉我。
关于mysql - 在记录中添加字符数(mysql),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7149454/