Os valores padrão em Insert Select em SQL
-
05-07-2019 - |
Pergunta
Como passar valores padrão na construção Insert Select no SQL?
Eu tenho uma tabela:
create table1 (field1 int, field2 int, field3 int default 1337)
create table2 (field1 int, field2 int)
Eu quero inserir table2
em table1
com uma construção semelhante a esta:
insert into table1 select field1, field2, DEFAULT from table2
É possível usar algo em vez de DEFAULT
no meu exemplo para começar a tarefa feita? Como são tabelas previamente selecionados normalmente inseridos com valores padrão?
Solução
Tente
INSERT INTO table1 (field1, field2)
SELECT field1, field2 FROM table2
Eu testei isso usando 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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow