MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Mendeteksi Apakah Nilai Berisi Setidaknya Satu Digit Numerik dalam SQL

Terkadang Anda mungkin perlu mencari tabel database hanya untuk baris yang berisi setidaknya satu nomor dalam kolom tertentu.

Secara teknis, angka dapat dilambangkan dengan kata dan simbol lain, tetapi di sini “angka” berarti “digit numerik”.

Di bawah ini adalah contoh cara menemukan baris yang berisi setidaknya satu nomor dalam berbagai DBMS berbasis SQL.

SQL Server

Di SQL Server, kita dapat menggunakan LIKE operator:

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

Contoh tersebut mengembalikan ProductName kolom dari Products tabel di mana setidaknya ada satu digit di ProductName kolom.

Oracle

Di Oracle, kita dapat menggunakan the REGEXP_LIKE kondisi dengan pola ekspresi reguler:

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

REGEXP_LIKE Oracle kondisi sesuai dengan standar ekspresi reguler POSIX. Oleh karena itu, kita bisa mendapatkan hasil yang sama dengan pola berikut:

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

MySQL

Di MySQL, kita bisa menggunakan REGEXP fungsi:

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

Kami juga dapat menggunakan POSIX di MySQL:

SELECT ProductName 
FROM Products
WHERE ProductName REGEXP '[[:digit:]]';

MariaDB

MariaDB juga memiliki REGEXP fungsi, sehingga kita dapat menggunakan kode yang sama dengan MySQL:

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

Kami juga dapat menggunakan POSIX di MariaDB:

SELECT ProductName 
FROM Products
WHERE ProductName REGEXP '[[:digit:]]';

PostgreSQL

Inilah yang setara dengan PostgreSQL:

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

Dan padanan POSIX:

SELECT ProductName 
FROM Products
WHERE ProductName ~ '[[:digit:]]';

SQLite

Dalam SQLite, kita dapat menggunakan kode berikut:

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

REGEXP operator adalah sintaks khusus untuk REGEXP() fungsi pengguna di SQLite.

Oleh karena itu, kita dapat menggunakan kode berikut untuk mendapatkan hasil yang sama:

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

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Menggunakan kecocokan dengan variabel dokumen input

  2. Membuat database di Mongo:tidak dapat terhubung, koneksi gagal

  3. Cara Mencadangkan dan Mengembalikan ClusterControl

  4. MongoDB - Buat Hubungan

  5. Sisipan MongoDB()