Тестирование пробелов в SQL Server

У меня есть некоторые пустые значения в моей таблице, и я не могу их поймать в инструкции IF.

я пробовал

IF @value = '' и if @value = NULL и ни один из них не улавливает пустые значения. Есть ли способ проверить, является ли varchar полностью пробелом?

АГА! Оказывается, я тестировал ошибку. Благодарю.

    Для сравнения с NULL используйте ключевое слово IS NULL.

     --Generic example: SELECT * FROM MY_TABLE WHERE SOME_FIELD IS NULL; --Instead of SELECT * FROM MY_TABLE WHERE SOME_FIELD = NULL; 
     ltrim(rtrim(isNull(@value,''))) = '' 

    (LTRIM (RTRIM (@Value)) = '' должен делать трюк.

    если length (@value) = 0 или @ значение null

    где length (rtrim (ltrim (yourcolumnname))) = 0 ИЛИ имя_колонка равно null

    Вместо того, чтобы выполнять чрезмерную манипуляцию строкой с помощью LTRIM AND RTRIM , просто RTRIM поиск выражения для первого «не-пространства».

     SELECT * FROM [Table] WHERE COALESCE(PATINDEX('%[^ ]%', [Value]), 0) > 0 

    Я только что проверил и узнал что-то интересное. Я писал свои запросы так:

     SELECT * FROM TableA WHERE Val IS NOT NULL AND LEN(RTRIM(LTRIM(Val))) > 0 

    Но на самом деле вам не нужно проверять значение null, все, что вам нужно сделать, это проверить длину после обрезки значения.

     SELECT * FROM TableA WHERE LEN(RTRIM(LTRIM(Val))) > 0 

    Это позволяет вырезать нули, а также любые столбцы с пробелом.

    Как оказалось, вам не нужно обрезать значение, потому что SQL Server игнорирует конечные пробелы, поэтому все, что вам действительно нужно, это: SELECT * FROM TableA WHERE LEN (Val)> 0

    У вас могут быть поля с несколькими пробелами (''), поэтому вы получите лучшие результаты, если вы обрезаете это:

     where ltrim(yourcolumnname) = '' 
    Interesting Posts

    MSSQL Объединить 2 строки в 1 с двумя столбцами

    Когда глобальные временные таблицы уничтожаются в SQL Server?

    могу ли я объединить несколько запросов в .net, чтобы они были возвращены в 1 пакет?

    Изменение дизайна запросов для повышения производительности

    TSQL Distinct и OrderBy и WHERE

    Рекомендации по экспорту коллекций mongo в SQL Server

    Переход от int к GUID в качестве первичных ключей

    Преобразование из varchar в числовое значение в SQL Server

    Производительность запросов в Access 2007 – создание бэкэнд SQL Server Express

    SqlBulkCopy не копирует данные

    Как рассчитать процент

    Получение уровня совместимости баз данных – разные результаты для одного и того же сервера / базы данных, разные пользователи

    SQL Query, столбец ДОЛЖЕН присутствовать, но результаты состояния, это не

    Вернуть одно значение, если true, вернуть другое значение, если не верно

    Восстановить базу данных до новой базы данных и файлов с помощью PowerShell

    Давайте будем гением компьютера.