简体   繁体   中英

MySQL INSERT query getting values from another table including a variable

I have a table which holds the products in a shopping basket (stowaway_orders) and a separate table that holds the orders placed (stowaway_orders).

The below code works fine and is intended to pull all the products from the basket to the the orders table, however...

I have a variable $discount that holds the amount of discount applied to the basket and I want to add this to the query so it gets added to each record in the orders table.

For example, if $discount=100 then the column 'discount' should have the value 100 for each row in the orders table that is being inserted.

How or where do I put this $discount variable into this query so the value is inserted into the discount column.

INSERT INTO stowaway_orders
( account_no, invoice_no, manufacturers_part_no, price, discount )
SELECT stowaway_basket.account_no, stowaway_basket.invoice_no,
stowaway_basket.manufacturers_part_no, stowaway_basket.price
FROM stowaway_basket
WHERE (((stowaway_basket.invoice_no)=".$invoice_no.")
AND
((stowaway_basket.sales_id)=".$account_no."))

I hope someone can help,

Rob

Just add your discount into the select query as a literal value. See:

INSERT INTO stowaway_orders
    ( account_no, invoice_no, manufacturers_part_no, price, discount )
SELECT 
    stowaway_basket.account_no, stowaway_basket.invoice_no,
    stowaway_basket.manufacturers_part_no, stowaway_basket.price,
    ? -- put the discount value here
FROM stowaway_basket
WHERE stowaway_basket.invoice_no = ?
AND stowaway_basket.sales_id = ?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM