sql >> Database >  >> RDS >> Sqlserver

Hoe ISNUMERIC() werkt in SQL Server

In SQL Server kunt u de ISNUMERIC() . gebruiken functie om uit te zoeken of een uitdrukking numeriek is of niet.

De functie retourneert 1 als de uitdrukking numeriek is, en 0 als dat niet het geval is.

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

Voorbeeld 1 – Numerieke uitdrukking

Hier is een voorbeeld om te demonstreren wat er gebeurt als u een numerieke uitdrukking aan deze functie doorgeeft.

SELECT ISNUMERIC(250) AS Result;

Resultaat:

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

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

We krijgen hetzelfde resultaat, zelfs als de waarde wordt opgegeven als een tekenreeks (tussen enkele aanhalingstekens).

SELECT ISNUMERIC('250') AS Result;

Resultaat:

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

Voorbeeld 2 – Niet-numerieke uitdrukking

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

SELECT ISNUMERIC('Hey!') AS Result;

Resultaat:

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

Voorbeeld 3 – Een databasevoorbeeld

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

USE WideWorldImportersDW;
SELECT COUNT(*) AS [Count]
FROM Dimension.Customer
WHERE ISNUMERIC([Postal Code]) = 1;

Resultaat:

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

Dit retourneert het aantal van alle rijen met een numerieke postcode.

Onverwachte resultaten? Wanneer niet-numeriek numeriek IS

Sommige tekens worden als numeriek beschouwd, zelfs als ze geen nummer zijn. Dit is iets waar u zich bewust van moet zijn wanneer u deze functie gebruikt, anders kunt u resultaten krijgen die u niet verwacht.

Zie niet-cijferige tekens die positief retourneren bij gebruik van ISNUMERIC() voor uitleg en voorbeelden.


  1. Betekent het evolueren van contactgegevens dat u uw database moet wijzigen?

  2. PGLogical 1.1-pakketten voor PostgreSQL 9.6beta1

  3. Ik kan niet meerdere afbeeldingen instellen in rasterweergave?

  4. Hoe een XML-bestand in een database te laden met behulp van een SSIS-pakket?