गंदे strings की सफाई

SQL Server डेटाबेस में डेटा क्लीनिंग

Miriam Antona

Software Engineer

अतिरिक्त स्पेस हटाना

SELECT * FROM carriers
| code | name                            |
|------|---------------------------------|
| YV   | Mesa Airlines Inc.              |
| AA   |   American Airlines Inc.        |
| B6   |   JetBlue Airways               |
| DL   |   Delta Air Lines Inc.          |
| HA   |   Hawaiian Airlines Inc.        |
| MQ   |   American Eagle Airlines Inc.  |
| EV   |  ExpressJet Airlines Inc.       |
| UA   |  United Air Lines Inc.          |
| US   |  US Airways Inc.                |
| ...  | ...                             |
SQL Server डेटाबेस में डेटा क्लीनिंग

अतिरिक्त स्पेस हटाना - TRIM

TRIM ( [characters ] string )
  • SQL Server 2017 से उपलब्ध
  • दिए गए string की शुरुआत और अंत से बताए गए कैरेक्टर हटाता है
  • कोई कैरेक्टर न दें तो स्पेस हटाता है।
SELECT TRIM('   JetBlue Airways    ');
JetBlue Airways
SQL Server डेटाबेस में डेटा क्लीनिंग

अतिरिक्त स्पेस हटाना - RTRIM और LTRIM

  • SQL Server 2017 से पुराने वर्ज़न के लिए -> RTRIM और LTRIM.
-- अंतिम स्पेस हटाता है
RTRIM ( character_expression )
-- शुरुआती स्पेस हटाता है
LTRIM ( character_expression )
SELECT LTRIM(RTRIM('   JetBlue Airways    '));
JetBlue Airways
SQL Server डेटाबेस में डेटा क्लीनिंग

अतिरिक्त स्पेस हटाना

SELECT code, TRIM(name) AS name FROM carriers
SELECT code, LTRIM(RTRIM(name)) AS name FROM carriers
| code | name                         |
|------|------------------------------|
| YV   | Mesa Airlines Inc.           |
| AA   | American Airlines Inc.       |
| B6   | JetBlue Airways              |
| DL   | Delta Air Lines Inc.         |
| HA   | Hawaiian Airlines Inc.       |
| US   | US Airways Inc.              |
| ...  | ...                          |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण

SELECT * FROM airports 
ORDER BY airport_state
| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| ...          | ...                                     | ...             | ...           |
| MIA          | Miami International                     | Miami           | fl            |
| TPA          | Tampa International                     | Tampa           | Fl            |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | FL            |
| MCO          | Orlando International                   | Orlando         | Florida       |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE

"Fl" / "fl" / "Florida" -> "Florida"

REPLACE ( string_to_replace , occurrences , string_replacement )
  • किसी string के सभी occurrences को दूसरे string से बदलता है

  • तुलना input की collation पर आधारित होती है

    • किसी खास collation में तुलना करने के लिए COLLATE उपयोग करें
    • मान लें कि हमारे inputs की collation case insensitive है
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE

SELECT 
    airport_code, airport_name, airport_city, 
    REPLACE(airport_state, 'FL', 'Florida') AS airport_state
FROM airports
ORDER BY airport_state
| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| ...          | ...                                     | ...             | ...           |
| MIA          | Miami International                     | Miami           | Florida       |
| TPA          | Tampa International                     | Tampa           | Florida       |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | Florida       |
| MCO          | Orlando International                   | Orlando         | Floridaorida  |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE

SELECT 
    airport_code, airport_name, airport_city, 
    REPLACE
        (REPLACE(airport_state, 'FL', 'Florida'),
         'Floridaorida', 'Florida') AS airport_state
FROM airports
ORDER BY airport_state
| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| MCO          | Orlando International                   | Orlando         | Florida       |
| TPA          | Tampa International                     | Tampa           | Florida       |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | Florida       |
| MIA          | Miami International                     | Miami           | Florida       |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE + CASE

SELECT airport_code, airport_name, airport_city, 
    CASE
        WHEN airport_state <> 'Florida' THEN REPLACE(airport_state, 'FL', 'Florida')
        ELSE airport_state 
    END AS airport_state
FROM airports
ORDER BY airport_state
| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| MCO          | Orlando International                   | Orlando         | Florida       |
| TPA          | Tampa International                     | Tampa           | Florida       |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | Florida       |
| MIA          | Miami International                     | Miami           | Florida       |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE + UPPER

"Fl" / "fl" / "Florida" -> "FL"

SELECT 
    airport_code, airport_name, airport_city, 
    REPLACE(airport_state, 'Florida', 'FL') AS airport_state
FROM airports
ORDER BY airport_state
| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| MCO          | Orlando International                   | Orlando         | FL            |
| TPA          | Tampa International                     | Tampa           | Fl            |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | FL            |
| MIA          | Miami International                     | Miami           | fl            |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE + UPPER

UPPER ( character_expression )
  • दिए गए string को uppercase में बदलता है।
SELECT 
    airport_code, airport_name, airport_city, 
        UPPER(
              REPLACE(airport_state, 'Florida', 'FL')
        ) AS airport_state
FROM airports
ORDER BY airport_state
SQL Server डेटाबेस में डेटा क्लीनिंग

strings का एकीकरण - REPLACE + UPPER

| airport_code | airport_name                            | airport_city    | airport_state |
|--------------|-----------------------------------------|-----------------|---------------|
| ...          | ...                                     | ...             | ...           |
| MCO          | Orlando International                   | Orlando         | FL            |
| TPA          | Tampa International                     | Tampa           | FL            |
| FLL          | Fort Lauderdale-Hollywood International | Fort Lauderdale | FL            |
| MIA          | Miami International                     | Miami           | FL            |
| ...          | ...                                     | ...             | ...           |
SQL Server डेटाबेस में डेटा क्लीनिंग

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

SQL Server डेटाबेस में डेटा क्लीनिंग

Preparing Video For Download...