sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man upptäcker om ett värde innehåller minst ett nummer i SQL Server

Ibland kan du behöva söka i en databastabell endast efter de rader som innehåller minst ett nummer i en given kolumn.

Strängt taget kan siffror representeras av ord och andra symboler, men för denna artikels syfte betyder "nummer" "numerisk siffra".

Nedan är ett exempel på hur man använder T-SQL för att hitta rader som innehåller minst ett nummer i SQL Server.

Exempel

Anta att vi har en tabell som heter Products med följande data i dess ProductName kolumn:

SELECT ProductName 
FROM Products;

Resultat:

+-------------------------------------+
| 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            |
+-------------------------------------+

Den här kolumnen innehåller uppenbarligen teckendata, men vissa rader innehåller siffror inom dessa teckendata (även om de inte är lagrade som en numerisk typ).

Vi kan använda följande fråga för att returnera bara de rader som innehåller siffror som representeras av numeriska siffror:

SELECT ProductName 
FROM Products
WHERE ProductName LIKE '%[0-9]%';

Resultat:

+-------------------------------------+
| ProductName                         |
|-------------------------------------|
| Smash 2000 Sledgehammer             |
| Chainsaw (includes 3 spare fingers) |
| Bottomless Coffee Mugs (4 Pack)     |
+-------------------------------------+

Som förväntat returneras endast de rader som innehåller siffror.

Denna teknik är inte begränsad till bara siffror. Du kan ändra den här frågan så att den inkluderar andra tecken om det behövs. Allt vi gör är att specificera vårt eget mönster för LIKE operatör.


  1. MySQL lagrad procedur med parametrar

  2. C#:Objekt kan inte castas från DbNull till andra typer

  3. Hur man uppdaterar/tar bort med element från två olika tabeller SQLite

  4. Multi-Cloud Full Databas Cluster Failover-alternativ för MariaDB Cluster