sql >> Databáze >  >> RDS >> Sqlserver

vložit data jednoho sloupce z tabulky do jiné tabulky, ale data druhého sloupce budou specifikována dynamicky

Zkuste toto:

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

Výše uvedené řešení umožnily dvě skutečnosti:

  1. insert .. select klauzule umožňuje vložit hodnoty vrácené libovolným select .
  2. Konstantní hodnoty můžete vrátit jako pole pomocí select , jako například:

    SELECT 0 as id, 'John' as name
    

Kombinací těchto dvou bodů dohromady jsem použil insert..select klauzule pro výběr hodnoty pole z první tabulky (aid ), spolu s konstantní hodnotou pro druhé pole (m ). AS bname_fixed_val klauzule je jednoduše alias pole a lze ji vynechat.

Pro více informací o SQL, zde je odkaz:http://www8.silversand. net/techdoc/teachsql/index.htm , i když googlování by také neuškodilo.




  1. Ovladač Postgres JDBC:PSQLException:chyba syntaxe při RETURNING nebo blízko něj

  2. Java MySQL - připojení Named Pipe vyvolá varování při zavření

  3. Spojte 2 tabulky, kde se dvě sady čísel překrývají ve spojovacích sloupcích

  4. Funkce REGEXP_INSTR() v Oracle