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

Намерете стойности, които не съдържат числа в MySQL

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

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

Пример

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

SELECT ProductName 
FROM Products;

Резултат:

+-------------------------------------+
| ProductName                         |
+-------------------------------------+
| Left handed screwdriver             |
| Right handed screwdriver            |
| Long Weight (blue)                  |
| Long Weight (green)                 |
| Smash 2000 Sledge Hammer            |
| Chainsaw (Includes 5 spare fingers) |
| Straw Dog Box                       |
| Bottomless Coffee Mugs (4 Pack)     |
+-------------------------------------+

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

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

SELECT ProductName 
FROM Products
WHERE ProductName NOT REGEXP '[0-9]+';

Резултат:

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

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

Тук използвахме NOT REGEX на MySQL функция за намиране на всички редове, които съответстват на модел. Моделът обхваща всички цифрови цифри от 0 до 9 , плюс всеки друг знак.

Това може да бъде написано и така:

SELECT ProductName 
FROM Products
WHERE NOT (ProductName REGEXP '[0-9]+');

Резултат:

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ADDTIME() Примери – MySQL

  2. Вмъкване на данни с помощта на mysqli

  3. Как да променя съпоставянето на база данни, таблица, колона?

  4. 4 начина за замяна на NULL с различна стойност в MySQL

  5. Как да групирате по месец в MySQL