Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да получите стойности, които не съдържат числа в SQL Server

Ако имате колона в таблица на база данни на SQL Server, която съдържа данни за знаци, но някои редове също съдържат числа в тези данни, можете да използвате следната техника, за да върнете само тези редове, които не съдържат числа.

Числата могат да бъдат представени с думи и други символи, но за целите на тази статия „число“ означава „числова цифра“. Така че намираме стойности, които не съдържат никакви цифрови цифри.

Пример

Да предположим, че имаме колона със следните данни:

SELECT ProductName 
FROM Products;

Резултат:

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

Тази колона съдържа данни за знаци, но някои редове съдържат числа в рамките на тези знакови данни.

Можем да използваме следната заявка, за да върнем само онези редове, които не съдържат числа:

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

Резултат:

+--------------------------+
| ProductName              |
|--------------------------|
| Left handed screwdriver  |
| Long Weight (blue)       |
| Long Weight (green)      |
| Straw Dog Box            |
| Right handed screwdriver |
+--------------------------+

Както се очаква, се връщат само онези редове, които не съдържат числа.

Можем лесно да го обърнем и да променим NOT LIKE до LIKE за да върнете само онези редове, които правят съдържат числа.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свързване на RStudio към SQL Server

  2. Най-добрият начин за внедряване на одитна пътека в SQL Server?

  3. Нови функции на SQL Server 2019

  4. Използвайте SET TEXTSIZE, за да ограничите връщаните данни за всеки ред в SQL Server

  5. TSQL Pivot без агрегатна функция