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

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

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

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

По-долу е даден пример за това как да използвате T-SQL за намиране на редове, които съдържат поне едно число в SQL Server.

Пример

Да предположим, че имаме таблица, наречена Products със следните данни в неговия ProductName колона:

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 LIKE '%[0-9]%';

Резултат:

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

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

Тази техника не се ограничава само до числа. Можете да промените тази заявка, за да включите други знаци, ако е необходимо. Всичко, което правим, е да посочим собствен модел за 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. Използване на DMV (изглед за динамично управление) и DMF (функция за динамично управление) | Отстраняване на проблеми с производителността на SQL Server -4

  2. Статистика за обекти на базата данни на SQL Server

  3. 3 начина за изброяване на всички съхранени процедури в база данни на SQL Server

  4. Консолидиране на екземпляр на SQL Server чрез клъстериране и подреждане

  5. Как да коригирате грешката „функцията datediff доведе до преливане“ в SQL Server