Ja, du kan göra detta med insert . . . select
. Detta verkar matcha avsikten med din ursprungliga fråga:
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;
Observera att detta kommer att infoga en rad för varje rad i broadcast_table
. Du kanske vill ha en where
klausul eller limit
för att bara få vissa rader.