来自结点的重复值 table

Duplicate values from an junction table

所以有三个 table。

Users(uid,username,email);

Studies(sid, studyname);

Users_Studies(uid,sid);

现在假设多对多联结点 table 填充如下: User_studies(uid,sid) (1,1) (1,2) (1,5) (3,1) (2,1)

我创建了一个 uid=4 的用户。 我希望该用户获得与 uid=1 相同的连接 意味着它应该是这样的: User_studies(uid,sid) (1,1) (1,2) (1,5) (3,1) (2,1) (4,1) (4,2) (4,5)

处理此问题的最佳方法是什么?查看了存储过程和 while 循环,但没有完全弄明白 :) 是否有一个简单的重复命令?或者有人可以指导我以最好的方式做到这一点:)

您正在寻找这样的东西:

INSERT INTO User_studies (uid, sid)
SELECT 4, sid
FROM   User_studies
WHERE  uid = 1