在MySQL中将null替换为0

时间:2010-08-20 16:18:07

标签: mysql sql null

我在MySQL的操作结果中得到NULL个值。

有没有办法将NULL值转换为值0?

6 个答案:

答案 0 :(得分:61)

是的,使用COALESCE

SELECT COALESCE(null_column, 0) AS null_column FROM whatever;

COALESCE遍历您给出的值列表,并返回第一个非空值。

答案 1 :(得分:49)

我正在添加此答案,因为没有人提及IFNULL功能

您可以使用IFNULL

SELECT IFNULL(column_name, 0) FROM table_name;

IFNULL将返回列的值(如果它具有NULL以外的值),否则传递第二个参数(在本例中为0)。

答案 2 :(得分:4)

在您的情况下,有COALESCE方法返回第一个非null参数:

COALESCE(field, 0)

但如果你想要更多,你可以使用它:

COALESCE(field1, field2, 0)

答案 3 :(得分:3)

如果您搞砸了,并且现有表布局中包含NULL并且想要零,则为解决方案:

if (found) {
    $scope.$apply(() => {
        found.forEach((i) => {
        //  let tmp = JSON.stringify(i).replace(/\\n/g,'').replace(/\s\\/g,'').replace(/\\/g,'').replace(/"{\s/g,'{').replace(/\s}"/g,'}').replace(/,\s"/g,',"').replace(/:\s/g,':');
          $scope.problems.push(JSON.parse(i));
        });
    });
  }

答案 4 :(得分:2)

MySQL的:

SELECT COALESCE(Mycolumn, 0);

答案 5 :(得分:0)

您可以通过强制将0值插入插入输入法:(int)0