डुप्लिकेट प्रबंधन

SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

Dean Smith

Founder, Atamai Analytics

क्वेरी में डुप्लिकेट आ रहे हैं

SELECT PlayerName,
       Team
FROM PlayerStats; 
PlayerName Team
... ...
Emmanuel Mudiay DEN
Emmanuel Mudiay NYK
Enes Kanter NYK
Eric Bledsoe PHO
Eric Bledsoe MIL
... ...
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

DISTINCT() से डुप्लिकेट हटाएँ

SELECT DISTINCT(PlayerName)
FROM PlayerStats;
PlayerName
...
Emmanuel Mudiay
Enes Kanter
Eric Bledsoe
Eric Gordon
Eric Moreland
...
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

DISTINCT() की जगह GROUP BY

SELECT DISTINCT(PlayerName)
FROM PlayerStats;
SELECT PlayerName
FROM PlayerStats 
GROUP BY PlayerName;
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

DISTINCT() की जगह GROUP BY

SELECT DISTINCT(PlayerName)
FROM PlayerStats;
SELECT PlayerName
FROM PlayerStats 
GROUP BY PlayerName;
SELECT PlayerName,
    COUNT(Team) AS TeamsPlayedFor
FROM PlayerStats 
GROUP BY PlayerName;
PlayerName TeamsPlayedFor
... ...
Emmanuel Mudiay 2
Enes Kanter 1
Eric Bledsoe 2
Eric Gordon 1
Eric Moreland 1
... ...
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

कोई और तरीका?

SELECT PlayerName
FROM Players;
PlayerName
...
Emmanuel Mudiay
Enes Kanter
Eric Bledsoe
Eric Gordon
Eric Moreland
...
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

Fruits टेबल्स

Fruits1

FruitName FruitType
Grapefruit Citrus
Orange Citrus
Peach Stone
Strawberry Berry

Fruits2

FruitName FruitType
Marionberry Berry
Orange Citrus
Plum Stone
Strawberry Berry
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

डुप्लिकेट फल

 

 

 

  • Orange और Strawberry डुप्लिकेट हैं

Fruits1 को Fruits2 में जोड़ने पर

FruitName FruitType
... ...
Orange Citrus
Orange Citrus
Plum Stone
Strawberry Berry
Strawberry Berry
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

UNION से डुप्लिकेट हटाएँ

SELECT FruitName, FruitType
FROM Fruits1

UNION

SELECT FruitName, FruitType
FROM Fruits2
FruitName FruitType
Grapefruit Citrus
Orange Citrus
Peach Stone
Strawberry Berry
Marionberry Berry
Plum Stone
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

UNION ALL के बारे में क्या?

 

  • UNION ALL
    • एक या अधिक टेबल से रो जोड़ता है और डुप्लिकेट रो नहीं हटाता

 

  • UNION
    • एक या अधिक टेबल से रो जोड़ता है और डुप्लिकेट रो हटाता है
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

DISTINCT() और UNION

  • सावधानी से उपयोग करें
  • डुप्लिकेट जाँचने के लिए अंदरूनी sort मैकेनिज़म उपयोग हो सकता है
  • क्वेरी रन-टाइम बढ़ सकता है
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

DISTINCT() का उपयोग

DISTINCT() से पहले पूछें:

  • क्या कोई वैकल्पिक तरीका है?
    • इसकी जगह यूनिक key वाली टेबल उपयोग करें
  • क्या क्वेरी aggregate function उपयोग कर रही है?
    • तो GROUP BY से group करें
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

UNION का उपयोग

UNION से पहले पूछें:

  • क्या डुप्लिकेट रो स्वीकार्य हैं?
  • क्या append की गई क्वेरियाँ डुप्लिकेट रो बनाएँगी?
  • अगर डुप्लिकेट ठीक हैं या बनेंगे नहीं, तो UNION ALL पर विचार करें
SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

अभ्यास करते हैं!

SQL Server में क्वेरी परफ़ॉर्मेंस बेहतर करना

Preparing Video For Download...