Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Wybierz, zmodyfikuj i wstaw do tej samej tabeli

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

Mam nadzieję, że jest to nieco jaśniejsze, jak to zrobić. Jak widać, pobrałem dwie kolumny z tabeli 2, a dla drugiej kolumny użyłem wartości tekstowej zamiast wartości dla kolumny 2.

Inne wzory, których możesz użyć:

Połącz kolumnę i inny tekst (przy założeniu, że kolumna jest już typem danych ciągu.

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

Połącz kolumnę i trochę tekstu. Jeden przykład, w którym kolumna jest ciągiem, a drugi, w którym go nie ma.

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. SQL Server:AKTUALIZUJ tabelę za pomocą ORDER BY

  2. Użyj TYPE_NAME(), aby uzyskać nazwę typu danych w SQL Server

  3. Uzyskiwanie dat między zakresem dat

  4. Nie można użyć specjalnego zleceniodawcy „sa”

  5. Odroczone ograniczenia w SQL Server