我有一个现有的客户表。我想根据我们公司提供的所有服务为每位客户添加一个新行。
原样:
Customer - ID
Freddy - 123
待:
Customer - ID - Service
Freddy - 123 - Serv1
Freddy - 123 - Serv2
Freddy - 123 - Serv3
等等......
现在我一直在使用以下但是没有给出所需的输出:
INSERT INTO Customers (Service)
VALUES ('Serv1'), ('Serv2'), ('Serv3')
答案 0 :(得分:2)
您需要某种JOIN
,在这种情况下需要CROSS JOIN
:
SELECT c.Customer, c.Id, v.s
FROM Customers c CROSS JOIN
(VALUES ('Serv1'), ('Serv2'), ('Serv3')) v(s);
但是,将其插入原始表是没有意义的。该表只有两列,但您似乎想要第三列。
答案 1 :(得分:1)
你只有两列,所以创建第三列。
转到表格>>设计>>并创建名为服务的第三行
现在这样做:
UPDATE Customers
SET service='serv1'
WHERE Customer='Freddy '
记住: WHERE子句指定应更新的记录或记录。如果省略WHERE子句,则所有记录都将更新!