sql >> Databáze >  >> RDS >> Mysql

MySQL vkládá data s pevnými hodnotami a vícenásobným výběrem výsledků

Ano, můžete to udělat pomocí insert . . . select . Zdá se, že to odpovídá záměru vašeho původního dotazu:

INSERT INTO notification_table (receiver_id, type, content, time) 
    SELECT (SELECT id FROM user_table WHERE username = 'test' LIMIT 1), 
           'system_broadcast',
           content, time
    FROM broadcast_table;

Všimněte si, že to vloží jeden řádek pro každý řádek v broadcast_table . Možná budete chtít where klauzule nebo limit získat pouze určité řádky.




  1. Kdy použít levé vnější spojení?

  2. SQLSTATE[HY000] [2002] Žádný takový soubor nebo adresář

  3. Jak omezit přístup k portu MySQL

  4. Formátovat výsledky dotazu SQLite jako sloupce se záhlavími sloupců