我寫在SQL Server中的存儲過程,並希望有人能提出一個計算效率更高的方式來處理這個問題:最佳途徑
我有表包含3000個訂單項的客戶訂單(即「產品需求」)數據。每個記錄表示特定產品的訂購數量。
我還有另一張生產訂單(即「產品供應」)數據,其中包含大約200個訂單項。每個記錄表示每種特定產品的可用數量。
問題是通常供應少於需求量,因此,自定義訂單表包含一個分配優先級值,該值顯示每個客戶訂單的排列順序以接收產品。
將生產訂單中可用數量分配給客戶訂單中訂單數量的最佳方式是什麼?請注意,您無法爲每個客戶訂單分配更多的訂單。
我可以通過創建一個WHILE循環並逐行地分配逐個產品的分配,但它非常慢。
有沒有更快的基於集合的方式來解決這個問題?
什麼版本的sql-server? – Taryn
你目前的逐行邏輯是什麼樣的? – mellamokb
[This](http://stackoverflow.com/questions/9420173/sql-subtracting-a-depleting-value-from-rows)可能會有所幫助。 – HABO