मेरे पास एक ऐसी स्थिति है जहां मुझे एक तालिका से "मात्रा का उपभोग" करने की आवश्यकता है, और इसे दूसरी तालिका के खिलाफ लागू करें जिसमें 1 या अधिक पंक्तियां हैं जो मात्रा में "पूल किए गए" हैं । मुझे यकीन है कि यह कैसे बेहतर वर्णन करने के लिए नहीं कर रहा हूँ यहाँ मैं एक मेज के नजरिए से क्या मतलब है:एसक्यूएल - पंक्तियों से एक घटते मूल्य को घटाकर
Table Pooled_Lots
----------------------------
Id Pool Lot Quantity
1 1 1 5
2 1 2 10
3 1 3 4
4 2 1 7
5 3 1 1
6 3 2 5
Table Pool_Consumption
----------------------------
Id PoolId QuantityConsumed
1 1 17
2 2 8
3 3 10
मैं एक SQL क्वेरी से एक है, जिसके परिणामस्वरूप rowset कि कैसा दिखेगा की जरूरत है:
Pool Lot Quantity QuantityConsumed RunningQuantity RemainingDemand SurplusOrDeficit
1 1 5 17 0 12 NULL
1 2 10 17 0 2 NULL
1 3 4 17 2 0 2
2 1 7 8 0 1 -1
3 1 1 10 0 9 NULL
3 2 5 10 0 4 -4
तो, Pool_Consumption.QuantityConsumed को Pooled_Lots की पंक्तियों पर घटाए गए "घटते मूल्य" होने की आवश्यकता है जहां Pool_Consumption.PoolId = Pooled_Lots.Pool। मैं समझ नहीं है कि कैसे आप एक प्रश्न है कि कहते हैं राज्य होगा:
- तो अंतिम पंक्ति पर नहीं, AmtConsumedFromLot = मात्रा - QuantityConsumed अगर QuantityConsumed < मात्रा, और मात्रा
- अधिक पंक्तियाँ हैं, तो QuantityConsumed = QuantityConsumed - मात्रा
- लूप अंतिम पंक्ति
- तो अंतिम पंक्ति तक, AmtConsumedFromLot = QuantityConsumed
मान लें आईडी एक प्राथमिक कुंजी है, और लक्ष्य डीबी एसक्यूएल 2 है 005
संपादित करें: के बाद से लोगों का प्रचार कर रहे हैं मैं हूँ "पर्याप्त जानकारी देने के नहीं, बंद कृपया इस" यहाँ और अधिक है: वहाँ नहीं सेट बहुत कि Pool_Consumption, से यह सभी बहुत से आकर्षित करने के लिए की जरूरत है खींचता है जहां Pool_Consumption.PoolId = Pooled_Lots.Pool, जब तक QuantityConsumed या तो पूरी तरह से समाप्त हो गया है या मैं Pooled_Lots पंक्तियों के अंतिम सबसेट जहां Pool_Consumption.PoolId = Pooled_Lots.Pool
मैं यह कैसे और अधिक व्याख्या करने के लिए पता नहीं है के खिलाफ घटाकर कर रहा हूँ। यह होमवर्क सवाल नहीं है, यह एक निर्मित "विचार अभ्यास" नहीं है। मुझे कई पंक्तियों के खिलाफ मात्राबद्ध तरीके से घटाने के तरीके को समझने की कोशिश करने में मदद की ज़रूरत है!
मैं नहीं जानता कि अप-मतदान के इस सवाल है, तो आप कुछ गंभीर डेटा का विवरण स्तर मुद्दे हैं कि लोगों को कर रहे हैं। 'Pool_Consumption' तालिका निर्दिष्ट नहीं करती है कि कितनी खपत वाली इकाइयां आती हैं। इसके अलावा, मैंने एक टाइपो तय किया। -1 – JohnB
कभी नहीं, मैं आपके सभी टाइपो को ठीक करने के लिए परेशान नहीं होने जा रहा हूं। कम से कम, इस सवाल पर सीधे डेटा प्राप्त करने में थोड़ा और समय बिताएं! हालांकि, आपके डिजाइन के साथ शुरू करने के लिए दोषपूर्ण है। (बंद करने के लिए मतदान) – JohnB
@ जॉन बीबी यही वह है जिसे मैं वर्तमान में सामना कर रहा हूं, जितना संभव हो उतना सरल और मेरे काम से गोपनीय डेटा का खुलासा किए बिना।अहंकारी और घोषणा करने के बजाय मैं वोटों के योग्य बेवकूफ सवाल पूछ रहा हूं, शायद आप मुझे इस बात के बारे में बता सकते हैं कि मुझे उस बिंदु पर पहुंचने के लिए "ग्रैन्युलरिटी" जोड़ने की ज़रूरत है जहां मैं वांछित आउटपुट अधिक आसानी से उत्पन्न कर सकता हूं? – Irinotecan