特定の列に少なくとも1つの数値を含む行のみをデータベーステーブルで検索する必要がある場合があります。
厳密に言えば、数字は単語やその他の記号で表すことができますが、この記事では、「数字」は「数字」を意味します。
以下は、T-SQLを使用してSQLServerで少なくとも1つの数値を含む行を検索する方法の例です。
例
Products
というテーブルがあるとします。 ProductName
に次のデータが含まれています 列:
SELECT ProductName
FROM Products;
結果:
+-------------------------------------+ | ProductName | |-------------------------------------| | Left handed screwdriver | | Long Weight (blue) | | Long Weight (green) | | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Straw Dog Box | | Bottomless Coffee Mugs (4 Pack) | | Right handed screwdriver | +-------------------------------------+
この列には明らかに文字データが含まれていますが、一部の行にはその文字データ内に数値が含まれています(数値型として保存されていない場合でも)。
次のクエリを使用して、数字で表された数値を含む行のみを返すことができます。
SELECT ProductName
FROM Products
WHERE ProductName LIKE '%[0-9]%';
結果:
+-------------------------------------+ | ProductName | |-------------------------------------| | Smash 2000 Sledgehammer | | Chainsaw (includes 3 spare fingers) | | Bottomless Coffee Mugs (4 Pack) | +-------------------------------------+>
予想どおり、数値を含む行のみが返されます。
このテクニックは数字だけに限定されません。必要に応じて、このクエリを変更して他の文字を含めることができます。 LIKE
に独自のパターンを指定するだけです オペレーター。