Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

inserire i dati di una colonna da una tabella in un'altra tabella, ma gli altri dati della colonna verranno specificati dinamicamente

Prova questo:

insert into b (bid, bname) select aid, 'm' as bname_fixed_val from a

Due fatti hanno consentito la soluzione sopra:

  1. Il insert .. select La clausola consente di inserire i valori restituiti con qualsiasi select .
  2. Puoi restituire valori costanti come campi con select , come ad esempio:

    SELECT 0 as id, 'John' as name
    

Combinando questi due punti insieme, ho usato un insert..select clausola per selezionare il valore del campo dalla prima tabella (aid ), insieme a un valore costante per il secondo campo (m ). Il AS bname_fixed_val La clausola è semplicemente un alias di campo e può essere omessa.

Per ulteriori informazioni su SQL, ecco un link:http://www8.silversand. net/techdoc/teachsql/index.htm , anche se googlare non farebbe male.