Database.Guide

In SQL Server kunt u de functie ISNUMERIC() gebruiken om uit te vinden of een expressie al dan niet numeriek is.

de functie geeft 1 terug als de expressie numeriek is, en 0 als dat niet zo is.

om deze functie te gebruiken, geeft u eenvoudig de waarde/expressie door aan de functie terwijl u deze aanroept.

Voorbeeld 1-Numerieke expressie

hier is een voorbeeld om aan te tonen wat er gebeurt wanneer u een numerieke expressie aan deze functie doorgeeft.

SELECT ISNUMERIC(250) AS Result;

resultaat:

+----------+| Result ||----------|| 1 |+----------+

In dit geval is de waarde numeriek en het resultaat is 1.

we krijgen hetzelfde resultaat, zelfs als de waarde wordt geleverd als een string (ingesloten in enkele aanhalingstekens).

SELECT ISNUMERIC('250') AS Result;

resultaat:

+----------+| Result ||----------|| 1 |+----------+

Voorbeeld 2-niet-numerieke expressie

dit is wat er gebeurt als de waarde niet numeriek is.

SELECT ISNUMERIC('Hey!') AS Result;

resultaat:

+----------+| Result ||----------|| 0 |+----------+

Voorbeeld 3-een Database voorbeeld

hier is een voorbeeld van het gebruik van ISNUMERIC() in een WHERE clausule bij het opvragen van een database:

USE WideWorldImportersDW;SELECT COUNT(*) AS FROM Dimension.CustomerWHERE ISNUMERIC() = 1;

resultaat:

+---------+| Count ||---------|| 402 |+---------+

dit geeft het aantal rijen met een numerieke Postcode terug.

Onverwachte Resultaten? Wanneer niet-numeriek is numeriek

worden sommige karakters behandeld als numeriek, zelfs als ze geen getal zijn. Dit is iets wat je moet zich bewust zijn van bij het gebruik van deze functie, anders kun je resultaten die je niet verwacht te krijgen.

zie tekens zonder getal die positief zijn bij gebruik van ISNUMERIC() voor een uitleg en voorbeelden.

Leave a Reply