Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Актуализирайте и добавете, освен ако не е празно

Звучи сякаш имате нужда от CASE :

update myTable 
set  Prefixes = 
           case 
               when Prefixes is null or Prefixes = ''
               then 'abc'
               else convert(nvarchar(max),Prefixes) + ', abc' 
            end
where MyCol='xyz' and (Prefixes not like '%abc%' or Prefixes is null)

Вижте SQL Fiddle с демонстрация



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използвайки SMO, все още не върви... ConnectionContext.ExecuteNonQuery(script) не може да разбере GO

  2. Обединяване на данни от 2 таблици

  3. Колоните за дата в SQL-Server (MSSQL-JDBC 3.0), работещи под Java 1.7.0, извлечени като 2 дни в миналото

  4. Грешка:TCP доставчик:Код на грешка 0x2746. По време на настройката на Sql в linux през терминал

  5. Съхранявайте и извличайте .ZIP файл в SQL SERVER 2005