Valeurs par défaut dans Insert Select in SQL
-
05-07-2019 - |
Question
Comment passer des valeurs par défaut dans la construction Insert Select en SQL?
j'ai une table:
create table1 (field1 int, field2 int, field3 int default 1337)
create table2 (field1 int, field2 int)
Je souhaite insérer table2
dans table1
avec une construction similaire à celle-ci:
insert into table1 select field1, field2, DEFAULT from table2
Est-il possible d'utiliser quelque chose au lieu de DEFAULT
dans mon exemple pour que la tâche soit effectuée? Comment les tables précédemment sélectionnées sont-elles généralement insérées avec les valeurs par défaut?
La solution
Essayez
INSERT INTO table1 (field1, field2)
SELECT field1, field2 FROM table2
J'ai testé cela avec SQL Server 2005
DECLARE @Table1 TABLE(
field1 INT,
field2 INT,
field3 INT DEFAULT 1337
)
INSERT INTO @Table1 (field1,field2,field3) SELECT 1, 2, 3
DECLARE @Table2 TABLE(
field1 INT,
field2 INT
)
INSERT INTO @Table2 (field1,field2) SELECT 15, 16
INSERT INTO @Table1 (field1,field2)
SELECT field1,
field2
FROM @Table2
SELECT * FROM @Table1
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow