1. ホーム
  2. sql

[解決済み] SQL- 文字列を検索する際に大文字と小文字を無視する

2022-03-01 11:27:22

質問


以下のデータがテーブルにあります。
価格注文出荷
価格受注生産品
出荷価格(PriceOrderShippedOutbound
SQLで、テーブルの中の文字列を検索するクエリを書く必要があります。文字列を検索する際には、大文字と小文字を無視する必要があります。以下のSQLクエリでは

SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%' 

は上記のすべてのデータを与えるのに対し

SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%' 

は与えない。

例えば、「PriceOrder」または「priceOrder」を検索するとうまくいきますが、「priceorder」または「Priceorder」はうまくいきません。 COLLATEを使用して以下のクエリを試しましたが、うまくいきません。どこが間違っているのか教えてください。

SELECT DISTINCT COL_NAME FROM myTable WHERE 
COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'

解決方法は?

このようなものを使用します。

SELECT DISTINCT COL_NAME FROM myTable WHERE UPPER(COL_NAME) LIKE UPPER('%PriceOrder%')

または

SELECT DISTINCT COL_NAME FROM myTable WHERE LOWER(COL_NAME) LIKE LOWER('%PriceOrder%')