Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL inserisce dati con valori fissi e risultati di selezione multipla

Sì, puoi farlo usando insert . . . select . Questo sembra corrispondere all'intenzione della tua query originale:

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;

Nota che questo inserirà una riga per ogni riga in broadcast_table . Potresti volere un where clausola o limit per ottenere solo righe particolari.