次の例では、OracleDatabaseに少なくとも1桁の数字を含むすべての行が返されます。
サンプルデータ
Products
というテーブルがあるとします。 ProductName
に次のデータが含まれています 列:
SELECT ProductName
FROM Products;
結果:
Left Handed Screwdriver Right Handed Screwdriver Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 Beer Water 10 Songs
クエリ例
次のクエリを使用して、数値を含む行のみを返すことができます。
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[0-9]+');
結果:
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs
数値を含む行のみが返されます。 「数字」とは、数字を意味します。数字は単語や記号で表すこともできますが、この例では数字のみを検出します。
Oracleでは、REGEXP_LIKE
条件はPOSIX正規表現標準に準拠しています。したがって、次のパターンで同じ結果を得ることができます。
SELECT ProductName
FROM Products
WHERE REGEXP_LIKE(ProductName, '[[:digit:]]');
結果:
Bottomless Coffee Cup (4 pack) Urban Dictionary Version 2.3 10 Songs