sql server 2008 - Why is Rank() not working as it should? -


यह मेरा टेबल डेटा है: -

  tblProduct में सम्मिलित करें (ProductId, ProductName, विवरण , श्रेणी) मान (1, 'सिन्थोल', 'कॉस्मेटिक साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में डालें (1, 'सिन्थोल', 'कॉस्मेटिक साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में डालें (1, 'सिन्थोल', 'कॉस्मेटिक साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में सम्मिलित करें (1, 'लक्स', 'कॉस्मेटिक साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में सम्मिलित करें (1, 'क्राउनिंग ग्लोरी', 'कॉस्मेटिक साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में डालें (2, 'सिन्थोल', 'अच्छा साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में सम्मिलित करें (3, 'लक्स', 'अच्छा साबुन', 'साबुन'); TblProduct (उत्पाद, उत्पाद, नाम, विवरण, श्रेणी) मूल्यों में सम्मिलित करें (3, 'लक्स', 'अच्छा साबुन', 'साबुन');  

जब मैं यह क्वेरी जारी करता हूं: -

  उत्पाद आयडी, उत्पादनाम, विवरण, श्रेणी, रैंक () का चयन करें (ProductId द्वारा उत्पाद आयड द्वारा विभाजन) के रूप में रैंक से tblProduct;  

मैं देख सकता हूं कि प्रत्येक पंक्ति में 1 रैंक है I अन्य सभी रैंक कहां हैं? उत्पादक 2 के साथ रैंक होना चाहिए रैंक 6 के बाद से मैं DENSE_RANK () का उपयोग नहीं कर रहा हूँ। प्रश्न क्यों काम नहीं कर रहा है?

आप ProductId द्वारा विभाजन कर रहे हैं - जिसका अर्थ है कि प्रत्येक 'विभाजन' होगा 1 से रैंकिंग प्रारंभ करें। PARTITION BY ProductId को निकालने का प्रयास करें।


Comments

Popular posts from this blog

c# - sqlDecimal to decimal clr stored procedure Unable to cast object of type 'System.Data.SqlTypes.SqlDecimal' to type 'System.IConvertible' -

Calling GetGUIThreadInfo from Outlook VBA -

Obfuscating Python code? -