Я создаю вычисляемый столбец в полях, некоторые из которых потенциально нулевые.Конкатенация строки SQL Server с помощью Null
Проблема в том, что если любое из этих полей равно null, весь вычисленный столбец будет равен нулю. Я понимаю из документации Microsoft, что это ожидается и может быть отключен с помощью параметра SET CONCAT_NULL_YIELDS_NULL. Однако я не хочу изменять это поведение по умолчанию, потому что я не знаю его последствий для других частей SQL Server.
Есть ли способ проверить, является ли столбец нулевым и только добавить его содержимое в формулу вычисленного столбца, если оно не является нулевым?
«Coalesce» - это стандартное имя функции ANSI, но ISNULL легче записать. –
И ISNULL, похоже, немного медленнее на SQL Server, поэтому, если вы хотите использовать его в функции, которая объединяет строки в вычисленный столбец, вы можете отказаться от стандарта ANSI и выбрать скорость (см. Adam Machanic: http: //sqlblog.com/blogs/adam_machanic/archive/2006/07/12/performance-isnull-vs-coalesce.aspx) –
Только что использовал этот запрос Isnull (,), он много помогал, поскольку я объединял значения вместе, и если один из них был нулевым, все тоже стало нулевым. – Sizons