可以使用select语句中的值在一个表中插入多行吗? 一个例子:
INSERT INTO SomeTable (UserID, ModuleID, ModuleRights) VALUES
(u.UserId, 1, 15),
(u.UserId, 2, 1),
(u.UserId, 4, 3),
(u.UserId, 8, 7)
SELECT * FROM Users u
答案 0 :(得分:5)
是的,但你需要小心如何做到这一点。在这种情况下,您似乎需要cross join
:
INSERT INTO SomeTable (UserID, ModuleID, ModuleRights)
SELECT u.UserId, v.ModuleID, v.ModuleRights
FROM Users u CROSS JOIN
(VALUES (1, 15),
(2, 1),
(4, 3),
(8, 7)
) v(ModuleID, ModuleRights);
答案 1 :(得分:0)
INSERT INTO SomeTable (UserID, ModuleID, ModuleRights)
SELECT u.UserID, u.ModuleID, u.ModuleRights FROM Users u;
如果您的ModuleID
和ModuleRights
不属于users
表,则插入空值或虚拟值并替换所需条件。
答案 2 :(得分:-1)
使用select statment
插入多行let maskLayer = CAShapeLayer()
maskLayer.frame = self.imageView.bounds
let roundedPath = UIBezierPath(ovalInRect: maskLayer.frame)
maskLayer.fillColor = UIColor.whiteColor().CGColor
maskLayer.backgroundColor = UIColor.clearColor().CGColor
maskLayer.path = roundedPath.CGPath
self.imageView.layer.mask = maskLayer