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 = ?
精彩评论