MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Phát hiện xem một giá trị có chứa ít nhất một chữ số trong SQL hay không

Đôi khi bạn có thể cần phải tìm kiếm một bảng cơ sở dữ liệu chỉ cho những hàng có chứa ít nhất một số trong một cột nhất định.

Về mặt kỹ thuật, số có thể được biểu thị bằng từ và các ký hiệu khác, nhưng ở đây “số” có nghĩa là “chữ số”.

Dưới đây là các ví dụ về cách tìm các hàng chứa ít nhất một số trong các DBMS dựa trên SQL khác nhau.

Máy chủ SQL

Trong SQL Server, chúng ta có thể sử dụng LIKE nhà điều hành:

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

Ví dụ đó trả về ProductName từ cột Products bảng có ít nhất một chữ số trong ProductName cột.

Oracle

Trong Oracle, chúng ta có thể sử dụng REGEXP_LIKE điều kiện với mẫu biểu thức chính quy:

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

REGEXP_LIKE của Oracle điều kiện tuân theo tiêu chuẩn biểu thức chính quy POSIX. Do đó, chúng ta có thể nhận được kết quả tương tự với mẫu sau:

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

MySQL

Trong MySQL, chúng ta có thể sử dụng REGEXP chức năng:

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

Chúng tôi cũng có thể sử dụng POSIX trong MySQL:

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

MariaDB

MariaDB cũng có REGEXP , vì vậy chúng ta có thể sử dụng mã tương tự như với MySQL:

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

Chúng tôi cũng có thể sử dụng POSIX trong MariaDB:

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

PostgreSQL

Đây là tương đương của PostgreSQL:

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

Và tương đương với POSIX:

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

SQLite

Trong SQLite, chúng ta có thể sử dụng mã sau:

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

REGEXP toán tử là một cú pháp đặc biệt cho REGEXP() chức năng người dùng trong SQLite.

Do đó, chúng ta có thể sử dụng đoạn mã sau để nhận được kết quả tương tự:

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

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tìm kiếm mongodb dữ liệu mùa xuân cho ngày ISO

  2. Xác thực tính duy nhất của một tài liệu nhúng được cấp bởi cha mẹ của nó trong mongoose

  3. Lọc với trình điều khiển regex MongoDB C #

  4. Vui lòng sử dụng 'MongoMappingContext # setAutoIndexCreation (boolean)' hoặc ghi đè 'MongoConfigurationSupport # autoIndexCreation ()' thành tục tĩu

  5. MongoDB $ mili giây