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

Актуализиране на всички SQL NULL стойности в множество колони с помощта на клауза WHERE на ниво колона?

Няма никаква конвенция за това -- ако искате да обработвате само записи, където съответните колони са NULL, трябва да използвате:

WHERE Answer_1 IS NULL 
   OR Answer_2 IS NULL 
   OR ...

Но можете да използвате това в командата UPDATE:

UPDATE YOUR_TABLE
   SET col1 = COALESCE(col1, 99),
       col2 = COALESCE(col2, 99),
       col3 = ...

Логиката е, че стойността ще бъде актуализирана до 99 само ако стойността на колоната е NULL, поради начина, по който работи COALESCE – връщане на първата не-NULL стойност (обработка на списъка, предоставен отляво надясно).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. кръстосаното прилагане на xml заявката работи експоненциално по-зле с нарастването на xml документа

  2. Как да намерите съпоставянията на базата данни, поддържани от вашия екземпляр на SQL Server

  3. Как мога да споделя източник на данни между множество проекти в Microsoft SQL Server 2005 Reporting Services и да запазя Visual Studio Preview?

  4. Как да използвам тригер за актуализиране, за да актуализирам друга таблица?

  5. Ефективна пагинация в SQL Server 2008 R2