Poista johtavat nollat ​​SQL:stä

Poista Johtavat Nollat Sql Sta



Kun käsittelet todellista dataa, se on usein sotkuista ja likaista. Tämä tarkoittaa, että se voi sisältää tarpeettomia tai virheellisiä tietoja, jotka voivat haitata toimintoja ja tehtäviä, joita haluamme suorittaa sillä.

Yksi yleisimmistä epäpuhtaista tiedoista, joita saatat kohdata, on se, jossa data sisältää etunollia numeerisissa tai merkkijonotiedoissa. Tämä voi tapahtua, kun tietoja tuodaan ulkoisista lähteistä tai käytetään automaattisia tiedonkeruutekniikoita.

Tietojen etunollien käyttäminen voi olla ongelmallista etenkin silloin, kun käsitellään merkkijonoina tallennettuja numeerisia arvoja.







Tässä oppaassa käsittelemme kaikkia menetelmiä ja tekniikoita, joita voimme käyttää SQL-tietojoukon etunollien poistamiseen.



Esimerkkitietojen määritys

Ennen kuin sukeltaamme sovelluksiin ja esimerkkeihin, aloitetaan perustamalla perustietojoukko, joka auttaa osoittamaan etunollien esiintymisen.



Harkitse työntekijän taulukkoa, jossa on seuraavat tiedot:





LUO TAULUKKO Työntekijä (
Työntekijätunnus VARCHAR(10)
);
INSERT INTO Employee (EmployeeID) ARVOT
('00123'),
('00456'),
('00789'),
('01012'),
('01567');

Tässä tapauksessa työntekijätunnus on 'varchar'-tyyppinen. Arvot sisältävät kuitenkin etunollia.

Tutkitaanpa menetelmiä, joilla voimme poistaa nämä etunollat.



CAST-toiminnon käyttäminen

Yksi tapa poistaa kaikki etunollat ​​on muuntaa merkkijono numeeriseksi. Voimme käyttää funktiota, kuten CAST tai CONVERT(), kuten seuraavassa esimerkissä esitetään:

SELECT CAST(Työntekijätunnus AS INT) AS TyöntekijäIDWithoutZeros
FROM Työntekijä;

Tämän pitäisi toimia automaattisesti tietokannoissa, jotka tukevat cast()-toimintoa.

Tietokannassa, kuten MySQL, saatat kuitenkin joutua siirtämään funktion trimmausfunktioon, jotta etunollat ​​todella poistetaan. Voit sitten muuntaa arvot numeerisiksi tyypeiksi seuraavan esimerkin mukaisesti:

SELECT CAST(TRIM(JOHTAVA '0' Työntekijätunnuksesta) Allekirjoitettuna) Työntekijätunnukseksi ilman nollia
FROM Työntekijä;

Tuloksena oleva tulos on seuraava:

LTRIM-toiminnon käyttäminen

Yleisin ja tehokkain tapa, jolla voit poistaa etunollat, on LTRIM()-funktion käyttö. Tämän toiminnon avulla voimme poistaa kaikki johtavat välilyönnit annetusta merkkijonosta.

Se ei kuitenkaan salli meidän määrittää tiettyä merkkiä, jonka haluamme poistaa. Meidän tapauksessamme voimme käyttää sitä poistamalla alkunollat ​​merkkijonosta.

Esimerkki on seuraava:

SELECT LTRIM(Työntekijätunnus, '0') AS Työntekijätunnus ilman nollia
FROM Työntekijä;

Tämän pitäisi poistaa johtavat nollamerkit merkkijonosta.

Johtopäätös

Tässä opetusohjelmassa tutkimme kahta päämenetelmää, joiden avulla voimme poistaa kaikki johtavat nollamerkit tietystä merkkijonosta/sarakkeesta.