Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर (T-SQL) में विभाजित तालिका को क्वेरी करते समय प्रत्येक पंक्ति के लिए विभाजन संख्या लौटाएँ

यदि आपके पास SQL ​​​​सर्वर में एक विभाजित तालिका है, और अब आप एक क्वेरी चलाना चाहते हैं जिसमें क्वेरी द्वारा लौटाई गई प्रत्येक पंक्ति पर विभाजन संख्या शामिल है, तो आप $PARTITION का उपयोग कर सकते हैं सिस्टम ऐसा करने के लिए कार्य करता है।

$PARTITION फ़ंक्शन विभाजन संख्या देता है जिसमें किसी निर्दिष्ट विभाजन फ़ंक्शन के लिए विभाजन स्तंभ मानों का एक सेट मैप किया जाएगा।

इसलिए आप इसे अपने SELECT . में इस्तेमाल कर सकते हैं प्रत्येक पंक्ति से संबंधित विभाजन को वापस करने के लिए कथन।

उदाहरण

प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है।

SELECT 
    CatId,
    CatName,
    $PARTITION.CatsPartitionFunction(CatId) AS [Partition]
FROM Cats;

परिणाम:

+---------+-------------+-------------+
| CatId   | CatName     | Partition   |
|---------+-------------+-------------|
| 1       | Meow        | 2           |
| 2       | Fluffy      | 2           |
| 3       | Scratch     | 2           |
| 4       | Bulldog     | 2           |
| 5       | King George | 2           |
| 6       | Sharp       | 3           |
| 7       | Fritz       | 3           |
| 8       | Garfield    | 3           |
| 9       | Boss        | 3           |
+---------+-------------+-------------+

इस मामले में, पंक्तियों को विभाजन 2 और 3 के बीच वितरित किया जाता है।

विभाजन 1 खाली है (जैसा कि विभाजन 4 है), दोनों सिरों पर विभाजन को खाली छोड़ने की Microsoft की सिफारिश के अनुसार, घटना विभाजन में डेटा आंदोलन को समाप्त करने के लिए विभाजित या विलय किया जाता है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मुझे कैसे पता चलेगा कि विदेशी कुंजी उल्लंघन के कारण SQLException को फेंक दिया गया था?

  2. संग्रहीत प्रक्रिया SQL सर्वर में पैरामीटर के रूप में NULL को कैसे प्रतिबंधित करें?

  3. SQL सर्वर में नामकरण मानकों या नामकरण सम्मेलन के अनुसार सभी डिफ़ॉल्ट बाधाओं का नाम कैसे बदलें - SQL सर्वर / TSQL ट्यूटोरियल भाग 93

  4. SQL सर्वर में किसी मौजूदा कॉलम में DEFAULT बाधा कैसे जोड़ें

  5. SQL सर्वर 2005 में लेन () बनाम डेटालेंथ ()