В настоящее время у меня есть оператор sql, который выводит данные в документ excel. Однако каждый раз, когда есть ячейка, у которой нет данных, она выводит NULL
в ячейку. Мне было интересно, есть ли способ заменить NULL
просто пробелом? Кто-то предложил использовать coalesce для этого, однако у меня никогда не было возможности использовать его, поэтому мне нужно будет немного почитать. У кого-нибудь есть другие предложения?
Замените нулевые значения только пробелом
Ответ 1
В своем выборе вы можете поместить столбец IsNull/IfNull вокруг столбца. Не особенно эффективен, но делает то, что вы хотите.
MS SQL
Select IsNull(ColName, '') As ColName From TableName
MySQL
Select IfNull(ColName, '') As ColName From TableName
Ответ 2
IFNULL - это расширение Oracle (принятое многими другими платформами). "Стандартная" функция SQL - coalesce():
SELECT COALESCE(columnName, ' ') AS ColumnName
FROM tableName;
Ответ 3
MySQL
select IFNULL(columnName, '') from tableName
IFNULL (выражение1, выражение2)
Если expr1 не является NULL, IFNULL() возвращает expr1; иначе он возвращает expr2. IFNULL() возвращает числовое или строковое значение в зависимости от контекста, в котором он используется.
Ответ 4
SELECT teacher.name, IfNull(dept.name, '') as Dept
FROM teacher left outer JOIN dept
ON teacher.dept=dept.id