SQL: 插入多行公共列

SQL: Insert multiple row with common columns

我要插入一个 table,它有 4 列。 虽然插入 3 列将是相同的,而另一列将不同,并且它将取自另一个 table。 我怎么能那样做? 例如; 插入 sendMsg(类型、名称、发件人名称、消息)值(4,'john','Mike','Hi, blabla')

我也会为 Bob 而不是 john 插入相同的消息。 我将发送的名称包含在名称 table.

谢谢。

使用 select 语句构建您的插入。像这样的东西可以工作(因为你没有提供更多细节):

INSERT INTO sendMsg (Type,Name,SenderName,Message) 
SELECT 4, "name" ,'Mike','Hi, blabla' FROM anothertable
-- WHERE .... 

列名都在"中,所以不要混淆。这是为了确保字符串和数据库对象之间的区别。 在 optinal WHERE 中你可以做类似

的事情
WHERE name in ('Bob', 'John', ...)

或您需要确定名称的任何算法。