从另外两个 table 中插入一个 table 中的多行
Inserting multiple rows in one table from two other tables
我需要用一个查询将多行插入到 table 中(而不是使用循环,这是可能的,但会浪费服务器资源。)
我有三个table:
-Members
MemberID (int)
-Items
ItemID (int)
-MemberInventory
MemberID (int)
ItemID (int)
当我添加一个新成员时,我需要 select 那个新的 memberID 和所有的 itemID 并将它们插入到 MemberInv table。
当我添加一个新项目时,我需要 select 那个新的 itemID 和所有的 memberIDs 并将它们插入到 MemberInv table。
您可以尝试对 max(memberID) 和 CROSS JOIN 项目使用 INSERT SELECT
insert into MemberInventory ( MemberID, ItemID )
select t.max_id , Items.ItemId
from (
select max(Members.memberId) max_id
from members
) t
cross join Items
我需要用一个查询将多行插入到 table 中(而不是使用循环,这是可能的,但会浪费服务器资源。)
我有三个table:
-Members
MemberID (int)
-Items
ItemID (int)
-MemberInventory
MemberID (int)
ItemID (int)
当我添加一个新成员时,我需要 select 那个新的 memberID 和所有的 itemID 并将它们插入到 MemberInv table。
当我添加一个新项目时,我需要 select 那个新的 itemID 和所有的 memberIDs 并将它们插入到 MemberInv table。
您可以尝试对 max(memberID) 和 CROSS JOIN 项目使用 INSERT SELECT
insert into MemberInventory ( MemberID, ItemID )
select t.max_id , Items.ItemId
from (
select max(Members.memberId) max_id
from members
) t
cross join Items