मैं दो टेबल PostalCodes
(के साथ एक स्तंभ के साथ मूल्यों से 00-00 करने के लिए 99-999) और Customers
(जो है, सब के बगल में, ग्राहक के डेटा, एक डाक कोड और आईडी के कर्मचारी है जो ग्राहक सेवा).
तो इन दो मैं बस में शामिल होने के माध्यम से डाक कोड:
SELECT DISTINCT
KP.postal,
K.IDemp
FROM
PostalCodes KP
LEFT JOIN
[Customers] K ON K.postal = KP.postal
और मैं कर रहा हूँ यह हो रही है:
| postal | IDemp |
+--------+-------+
| 00-000 | NULL |
| 00-001 | NULL |
| 00-001 | 12PH |
| 00-002 | NULL |
| 00-003 | NULL |
| 00-004 | NULL |
| 00-004 | 10PH |
| 00-005 | NULL |
| ... | ... |
तो जैसा कि आप देख सकते हैं, नहीं सभी पोस्टल कोड में इस्तेमाल कर रहे हैं Customers
तालिका, लेकिन मेरा उद्देश्य मैं सभी की जरूरत है डाक कोड आवंटित करने के लिए कुछ करने के लिए कर्मचारी की तरह कुछ बनाया के क्षेत्र "सेवा", तो ऐसा करने के लिए मैं चाहता हूँ कि भरने के लिए नल मान के साथ पिछले नहीं अशक्त मूल्य प्राप्त करने के लिए इस तरह से कुछ:
| postal | IDemp |
+--------+-------+
| 00-000 | NULL |
| 00-001 | 12PH |
| 00-002 | 12PH |
| 00-003 | 12PH |
| 00-004 | 10PH |
| 00-005 | 10PH |
| ... | ... |
मैं कोशिश कर रहा था का उपयोग करने के लिए LAG()
समारोह, लेकिन यह काम नहीं कर रहा था (या कम से कम मैं नहीं जानता कि कैसे इसे ठीक तरह से उपयोग)
LAG(K.IDemp) OVER (ORDER BY KP.postal)
मैंने पाया कुछ इसी तरह के सवाल पहले से ही है, लेकिन नहीं आ सकता है कि कैसे का उपयोग करने के लिए अपने जवाब के लिए मेरे मामले में ।