Oui, vous pouvez le faire en utilisant insert . . . select . Cela semble correspondre à l'intention de votre requête d'origine :
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;
Notez que cela insérera une ligne pour chaque ligne dans broadcast_table . Vous voudrez peut-être un where clause ou limit pour obtenir uniquement des lignes particulières.