0
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 が複数の行を返します

4

2 に答える 2

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`
于 2013-04-21T17:34:26.963 に答える
0

なぜなら、あなたがやっているとき

SELECT Copy_ID
FROM cart

クエリはCopy_ID格納されているすべての値を返しcart、同時に次のクエリもセットを返します。

ordersMySQL は、テーブルに挿入する必要がある値のペアを見つけられませんでした。INSERT特定の値のセットをテーブルに入れるクエリを見つける必要があります。

于 2013-04-21T17:32:46.927 に答える