INSERT INTO orders( Copy_ID, CustID )
VALUES (
(
SELECT Copy_ID
FROM cart
), (
SELECT c.Cust_ID
FROM customers AS c, accounts AS a, cart AS ca
WHERE c.Cust_ID = a.Cust_ID
AND a.Username = ca.Customer
)
)
我想通过php运行此查询,但mysql返回的行数超过1行
答案 0 :(得分:0)
因为你在做什么
SELECT Copy_ID
FROM cart
查询返回Copy_ID
中存储的cart
的所有值,同时,下一个查询也返回一个集合。
MySQL没有找到应该插入orders
表的一对值。
您必须查询一个查询,其中INSERT
将一些特定的值集合到表中。
答案 1 :(得分:0)
请改为尝试:
INSERT INTO `orders` (`Copy_ID`,`Cust_ID`)
SELECT `cart`.`CopyID`, `customers`.`CustID`
FROM `customers`
JOIN `accounts` USING (`Cust_ID`)
JOIN `cart` ON `accounts`.`Username`=`cart`.`Customer`