簡體   English   中英

如何將插入查詢與select子查詢和where子句一起使用?

[英]How to use insert query with select sub query and where clause?

我正在使用它,但是出了錯

$sql="INSERT INTO `shopping_cart`  
(userid`,`product_id`,`pr_name`, `pr_price`)  
VALUES('$us_id','$pr_id','$pname','$prprice')  
WHERE(SELECT `product_id` FROM `product_tb_men`  
JOIN `shopping_cart` ON product_tb_men.pr_id= shopping_cart.product_id  
WHERE product_tb_men.pr_id=$pr_id)";

可能是您需要這個:

UPDATE `shopping_cart` 
SET userid = '$us_id',
  `product_id` = '$pr_id',
  `pr_name` = '$pname', 
  `pr_price` = '$prprice'
WHERE <field_name_for_id> IN (SELECT `product_id` FROM `product_tb_men`  
 JOIN `shopping_cart` ON product_tb_men.pr_id= shopping_cart.product_id  
 WHERE product_tb_men.pr_id='$pr_id')

WHERE子句不能與INSERT一起使用。 SELECT下面的子查詢我一直保持不變,這就是你給的。 更改位於剩余的主查詢中

UPDATE `shopping_cart` 
    SET `userid` = '$us_id', 
      `product_id` = '$pr_id', 
      `pr_name` = '$pname', 
      `pr_price` = '$prprice'
    WHERE `product_id` in (SELECT `product_id` FROM `product_tb_men`  
     JOIN `shopping_cart` ON product_tb_men.pr_id= shopping_cart.product_id  
     WHERE product_tb_men.pr_id=$pr_id);

試試這個查詢:

"INSERT INTO `shopping_cart` (`userid`,`product_id`,`pr_name`, `pr_price`)  
SELECT '$us_id', '$pr_id','$pname','$prprice' FROM `product_tb_men` 
JOIN `shopping_cart` ON product_tb_men.pr_id= shopping_cart.product_id  
WHERE product_tb_men.pr_id= $pr_id"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM