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

Изберете, модифицирайте и вмъкнете в същата таблица

INSERT INTO table2 (column1, column2, column3)
SELECT column1, 'no', column3 FROM table2 WHERE column2 = 'yes'

Надяваме се, че това е малко по-ясно как да направите това. Както можете да видите, хванах две колони от table2 и за другата колона използвах текстова стойност вместо стойността за column2.

Други модели, които можете да използвате:

Комбинирайте колона и някакъв друг текст (Предполага се, че колоната вече е низов тип данни.

INSERT INTO table2 (column1, column2)
SELECT column1 + 'no', column2 FROM table2 WHERE column2 = 'yes'

Комбинирайте колона и малко текст. Един пример, където колоната е низ, и един, където не е.

INSERT INTO table2 (column1, column2)
SELECT column1 + 'no', 'A' + cast(column2 as Varchar (10)) FROM table2 WHERE column2 = 'yes'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Кога да се използва EXCEPT вместо NOT EXISTS в Transact SQL?

  2. Заявката се изпълнява бързо, но работи бавно в съхранената процедура

  3. bcp:Грешка =[Microsoft][SQL Server Native Client 10.0]Низови данни, дясно съкращаване

  4. Как да ИЗБЕРЕТЕ ОТ съхранената процедура

  5. Как да форматирам времето от dd:hh:mm:ss до само hh:mm:ss в SQL сървър?