如何组合这两个查询:从一个表复制并插入新数据

I am currently running two queries in order to:

  1. Copy data from table 1 and move it to table 2
  2. Add new data to table 2

These queries are working, but I was wondering if there was a more efficient way of doing this by combining it into one query:

$insert_order = $db->query("INSERT INTO store_orders (CartID, OrderStatus, CustomerID, CartData, CartNumItems, CartCost, CartWeight, ShippingData, ShippingMethod, ShippingCost, OrderData, CustomerNotes, IP) SELECT CartID, OrderStatus, CustomerID, CartData, CartNumItems, CartCost, CartWeight, ShippingData, ShippingMethod, ShippingCost, OrderData, CustomerNotes, IP FROM store_carts WHERE CartID = '$cart_id' LIMIT 1");

$order_number = $db->insert_id;

$update_order = $db->query("UPDATE store_orders SET OrderStatus=3, Merchant='PayPal WPP', MerchantData='$MerchantData', Receipt='$receipt', Charged=1, ChargeAmount='$ChargeData[AMT]' WHERE ID = '$order_number' LIMIT 1");

You can set static values on your SELECT query, for example select '1', 'asd', 3, column from table

In a single command, your insert would be:

$insert_order = $db->query("INSERT INTO store_orders (CartID, OrderStatus, Merchant, MerchantData, Receipt, Charged, ChargeAmount, CustomerID, CartData, CartNumItems, CartCost, CartWeight, ShippingData, ShippingMethod, ShippingCost, OrderData, CustomerNotes, IP) SELECT CartID, 3, 'PayPal WPP', '$MerchantData', '$receipt', 1, '$ChargeData[AMT]', CustomerID, CartData, CartNumItems, CartCost, CartWeight, ShippingData, ShippingMethod, ShippingCost, OrderData, CustomerNotes, IP FROM store_carts WHERE CartID = '$cart_id' LIMIT 1");

I do not know if this will work, but you could try using static values where known:-

$insert_order = $db->query("INSERT INTO store_orders 
    (CartID, OrderStatus, Merchant, 
    MerchantData, Receipt, Charged, 
    ChargeAmount, CustomerID, CartData, 
    CartNumItems, CartCost, CartWeight, 
    ShippingData, ShippingMethod, ShippingCost, 
    OrderData, CustomerNotes, IP) 
SELECT 
    CartID, 3, 'PayPal WPP', 
    '$MerchantData','$receipt', 1, 
    '$ChargeData[AMT]', CustomerID, CartData, 
    CartNumItems, CartCost, CartWeight, 
    ShippingData, ShippingMethod, ShippingCost, 
    OrderData, CustomerNotes, IP 
    FROM store_carts 
    WHERE CartID = '$cart_id' LIMIT 1");