Soms moet u in een databasetabel zoeken naar alleen die rijen die ten minste één getal in een bepaalde kolom bevatten.
Strikt genomen kunnen getallen worden weergegeven door woorden en andere symbolen, maar voor de toepassing van dit artikel betekent "getal" "numeriek cijfer".
Hieronder ziet u een voorbeeld van hoe u T-SQL kunt gebruiken om rijen te vinden die ten minste één nummer bevatten in SQL Server.
Voorbeeld
Stel dat we een tabel hebben met de naam Products
met de volgende gegevens in zijn ProductName
kolom:
SELECT ProductName
FROM Products;
Resultaat:
+-------------------------------------+ | ProductName | |-------------------------------------| | Left handed screwdriver | | Long Weight (blue) | | Long Weight (green) | | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Straw Dog Box | | Bottomless Coffee Mugs (4 Pack) | | Right handed screwdriver | +-------------------------------------+
Deze kolom bevat uiteraard tekengegevens, maar sommige rijen bevatten getallen binnen die tekengegevens (ook al zijn ze niet opgeslagen als een numeriek type).
We kunnen de volgende query gebruiken om alleen die rijen te retourneren die getallen bevatten die worden weergegeven door numerieke cijfers:
SELECT ProductName
FROM Products
WHERE ProductName LIKE '%[0-9]%';
Resultaat:
+-------------------------------------+ | ProductName | |-------------------------------------| | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+
Zoals verwacht worden alleen de rijen die getallen bevatten geretourneerd.
Deze techniek is niet beperkt tot alleen cijfers. Indien nodig kunt u deze query wijzigen om andere tekens op te nemen. Het enige wat we doen is ons eigen patroon specificeren voor de LIKE
telefoniste.