Замените нулевые значения только пробелом

В настоящее время у меня есть оператор 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