sql >> Database teknologi >  >> RDS >> Oracle

Find ud af, om en værdi indeholder mindst ét ​​numerisk ciffer i Oracle

Følgende eksempel returnerer alle rækker, der indeholder mindst ét ​​numerisk ciffer i Oracle Database.

Eksempel på data

Antag, at vi har en tabel kaldet Products med følgende data i dens ProductName kolonne:

SELECT ProductName 
FROM Products;

Resultat:

Left Handed Screwdriver
Right Handed Screwdriver
Bottomless Coffee Cup (4 pack)
Urban Dictionary Version 2.3
Beer Water
10 Songs

Eksempelforespørgsel

Vi kan bruge følgende forespørgsel til kun at returnere de rækker, der indeholder tal:

SELECT ProductName 
FROM Products
WHERE REGEXP_LIKE(ProductName, '[0-9]+');

Resultat:

Bottomless Coffee Cup (4 pack)
Urban Dictionary Version 2.3
10 Songs

Kun de rækker, der indeholder tal, returneres. Med "tal" mener jeg numeriske cifre. Tal kan også repræsenteres af ord eller symboler, men dette eksempel registrerer kun numeriske cifre.

I Oracle er REGEXP_LIKE betingelse overholder POSIX regulære udtryksstandard. Derfor kan vi få det samme resultat med følgende mønster:

SELECT ProductName 
FROM Products
WHERE REGEXP_LIKE(ProductName, '[[:digit:]]');

Resultat:

Bottomless Coffee Cup (4 pack)
Urban Dictionary Version 2.3
10 Songs

  1. Tilslutning til en MySQL-database i .NET

  2. Del 1:Billedklassificering med MariaDB Server og TensorFlow – en oversigt

  3. Parsing af tabel- og kolonnenavne fra SQL/HQL Java

  4. Sådan installeres MySQL 8 på Ubuntu 20.04 LTS