Elimineu els zeros principals a SQL

Elimineu Els Zeros Principals A Sql



Quan es tracten dades del món real, sovint són desordenats i bruts. Això vol dir que pot contenir dades innecessàries o no vàlides que poden dificultar les operacions i les tasques que volem realitzar-hi.

Una de les dades brutes més habituals que us podeu trobar és aquella en què les dades contenen zeros inicials en dades numèriques o de cadena. Això pot passar quan s'importen les dades de fonts externes o s'utilitzen tècniques de recollida de dades automatitzades.

Els zeros inicials a les dades poden ser problemàtics, especialment quan es tracta de valors numèrics que s'emmagatzemen com a cadenes.







En aquesta guia, parlarem de tots els mètodes i tècniques que podem utilitzar per eliminar els zeros inicials d'un conjunt de dades SQL.



Configuració de dades de mostra

Abans d'endinsar-nos en les aplicacions i els exemples, comencem configurant un conjunt de dades bàsic que us ajudarà a demostrar l'aparició de zeros inicials.



Considereu la taula d'un empleat amb les dades que es mostren a continuació:





CREA LA TAULA Empleat (
EmployeeID VARCHAR(10)
);
INSERT ALS VALORS de l'empleat (EmployeeID).
('00123'),
('00456'),
('00789'),
('01012'),
('01567');

En aquest cas, l'identificador de l'empleat és de tipus 'varchar'. Tanmateix, els valors contenen zeros inicials.

Explorem els mètodes que podem utilitzar per eliminar aquests zeros inicials.



Ús de la funció CAST

Un dels mètodes per eliminar qualsevol zero inicial és convertir la cadena en un tipus numèric. Podem utilitzar una funció com CAST o CONVERT() tal com es mostra a l'exemple següent:

SELECT CAST(EmployeeID AS INT) COM EmployeeIDWithoutZeros
D'Empleat;

Això hauria de funcionar automàticament a les bases de dades que admetin la funció cast().

Tanmateix, a bases de dades com MySQL, és possible que hàgiu de portar la funció a la funció de retall per eliminar els zeros inicials. A continuació, podeu convertir els valors en tipus numèric tal com es mostra a l'exemple següent:

SELECCIONA CAST(TALLA (LÍDER '0' DE L'ID de l'empleat) COM SIGNAT) COM A ID de l'empleatSense Zeros
D'Empleat;

La sortida resultant és la següent:

Ús de la funció LTRIM

El mètode més comú i potent que podeu utilitzar per eliminar els zeros inicials és utilitzar la funció LTRIM(). Aquesta funció ens permet eliminar els espais en blanc inicials d'una cadena determinada.

Tanmateix, no ens permet especificar el caràcter específic que volem eliminar. En el nostre cas, podem utilitzar-lo eliminant els zeros inicials d'una cadena.

Un exemple és el següent:

SELECT LTRIM(EmployeeID, '0') COM EmployeeIDWithoutZeros
DE Empleat;

Això hauria d'eliminar els caràcters zero inicials de la cadena.

Conclusió

En aquest tutorial, hem explorat dos mètodes principals que podem utilitzar per eliminar qualsevol caràcter zero inicial d'una cadena/columna determinada.