Кто рюхает SQL?
ALTER PROCEDURE sp_create_receipt_items
(
@location_id uniqueidentifier
,@shipping_receipt_id uniqueidentifier
)
Селект надо делать вот такой:
SELECT
purchase_order_item.product_item_id
FROM
purchase_order_item
WHERE
(
purchase_order_item.location_id = @location_id) OR (@location_id IS NULL
AND (purchase_order_item.ordered_quantity < purchase_order_item.receipt_quantity)
)
А insert потом для каждой строки вот такой:
INSERT INTO shipping_receipt_item
(
shipping_receipt_id
,product_item_id
,receipt_quantity
)
VALUES
(
@shipping_receipt_id
,@product_item_id
,0
)
типа тебе надо курсор создать и потом из него читать. Как это делать, зависит от БД. См. документацию к ней.
ALTER PROCEDURE sp_create_receipt_items
(
@location_id uniqueidentifier
,@shipping_receipt_id uniqueidentifier
)
INSERT INTO shipping_receipt_item (shipping_receipt_id, product_item_id,receipt_quantity)
(
SELECT @shipping_receipt_id, purchase_order_item.product_item_id, 0
FROM purchase_order_item
WHERE
(
purchase_order_item.location_id = @location_id) OR (@location_id IS NULL
AND (purchase_order_item.ordered_quantity < purchase_order_item.receipt_quantity)
)
)
Покатило. Респект!
Оставить комментарий
stm2477274
Люди как написать stored procedur'у, которая делает select, и для каждой строчки из результата делает insert в другую таблицу?