2012-01-31 15 views
5

Ho bisogno di inserire valori in una tabella. Ma la mia condizione è che ho bisogno di selezionare Min(date) da un'altra tabella e questo valore dovrebbe essere inserito in un'altra tabella.Come utilizzare una query di selezione all'interno di una query di inserimento in SQL Server 2005

La mia domanda

Insert into tempTable values 
('Value1','Value2','Value3',(select min(val_dt) from anotherTable),'Y',getdate()) 

Se uso questa domanda che sto affrontando errore.

Guida come utilizzare la query di selezione all'interno della query di inserimento.

risposta

7

Invece di utilizzare VALORI() nell'istruzione INSERT, utilizzare un SELECT per aggiungere i valori di riga:

INSERT INTO tempTable 
SELECT 'Value1', 'Value2', 'Value3', MIN(val_dt), 'Y', GETDATE() 
FROM anotherTable 

E SELECT può essere così contorto come si vuole, il che significa wheres e simili può essere incluso.

Problemi correlati