Odstráňte úvodné nuly v SQL

Odstrante Uvodne Nuly V Sql



Pri práci s údajmi z reálneho sveta sú často chaotické a špinavé. To znamená, že môže obsahovať nepotrebné alebo neplatné údaje, ktoré môžu brániť operáciám a úlohám, ktoré na ňom chceme vykonávať.

Jedným z najbežnejších nečistých údajov, s ktorými sa môžete stretnúť, je údaj, v ktorom údaje obsahujú úvodné nuly v číselných alebo reťazcových údajoch. Môže k tomu dôjsť pri importe údajov z externých zdrojov alebo pri použití techník automatizovaného zberu údajov.

Úvodné nuly v údajoch môžu byť problematické najmä pri práci s číselnými hodnotami, ktoré sú uložené ako reťazce.







V tejto príručke budeme diskutovať o všetkých metódach a technikách, ktoré môžeme použiť na odstránenie akýchkoľvek úvodných núl v množine údajov SQL.



Vzorové nastavenie údajov

Predtým, ako sa ponoríme do aplikácií a príkladov, začnime nastavením základného súboru údajov, ktorý pomôže demonštrovať výskyt vedúcich núl.



Zvážte tabuľku zamestnanca s údajmi, ako je uvedené nižšie:





VYTVORIŤ TABUĽKU Zamestnanec (
ID zamestnanca VARCHAR(10)
);
VLOŽTE DO HODNOT zamestnanca (ID zamestnanca).
('00123'),
('00456'),
('00789'),
('01012'),
('01567');

V tomto prípade je ID zamestnanca typu „varchar“. Hodnoty však obsahujú úvodné nuly.

Poďme preskúmať metódy, ktoré môžeme použiť na odstránenie týchto úvodných núl.



Pomocou funkcie CAST

Jednou z metód odstránenia úvodných núl je konverzia reťazca na číselný typ. Môžeme použiť funkciu ako CAST alebo CONVERT(), ako je znázornené v nasledujúcom príklade:

SELECT CAST(EmployeeID AS INT) AS EmployeeIDWithoutNúl
OD zamestnanca;

Toto by malo fungovať automaticky v databázach, ktoré podporujú funkciu cast().

V databázach, ako je MySQL, však možno budete musieť preniesť funkciu na funkciu trim, aby ste skutočne odstránili úvodné nuly. Potom môžete hodnoty previesť na číselný typ, ako je znázornené v nasledujúcom príklade:

VYBERTE ODOSIELANIE (TRIM (VEDÚCE '0' Z ID zamestnanca) AKO PODPÍSANÉ) AKO ID zamestnancaBez núl
OD zamestnanca;

Výsledný výstup je nasledovný:

Používanie funkcie LTRIM

Najbežnejšou a najúčinnejšou metódou, ktorú môžete použiť na odstránenie akýchkoľvek úvodných núl, je použitie funkcie LTRIM(). Táto funkcia nám umožňuje odstrániť akékoľvek počiatočné medzery v danom reťazci.

Nedovoľuje nám však špecifikovať konkrétny znak, ktorý chceme odstrániť. V našom prípade to môžeme použiť odstránením úvodných núl z reťazca.

Príklad je nasledujúci:

SELECT LTRIM(EmployeeID, '0') AS EmployeeIDWithout Nula
OD zamestnanca;

Tým by sa z reťazca mali odstrániť znaky s úvodnou nulou.

Záver

V tomto návode sme preskúmali dve hlavné metódy, ktoré môžeme použiť na odstránenie akýchkoľvek úvodných nulových znakov z daného reťazca/stĺpca.