LIKE述語
用途:特定の文字列が含まれる行を取得する(where句で使用)
■%ワイルドカード
0個以上の文字で構成される文字列にマッチするワイルドカード。
製品名(Name)に「Ball」という文字列を含む行と
「LL」という文字列で始まる行を取り出すSQLは以下の通り。
SELECT Product.ID, Name FROM Production.Product WHERE Name LIKE '%Ball%' OR Name LIKE 'LL%'
※ワイルドカードでは大文字と小文字が区別されることに注意
製品名(Name)の最初が「Hex Nut」で、その後に任意の一文字を持つ行を
取り出すSQLは以下の通り。
SELECT ProductID,Name FROM Production.Product WHERE Name LIKE 'Hex Nut _'
なお、「_」は複数指定することも可能
「Hex Nut 10」のようにNutの後に任意の2文字が続く製品名を持つことを
条件に指定する場合のSQLは以下の通り。
SELECT ProductID,Name FROM Production.Product WHERE Name LIKE 'Hex Nut __'
■%ワイルドカードと_ワイルドカードの組み合わせ
%ワイルドカードと_ワイルドカードは組み合わせることが可能
Productテーブルから、製品名NameがCで始まり
最後の文字の一つ前がcである行を取り出すSQLは以下の通り。
SELECT ProductID,Name FROM Production.Product WHERE Name LIKE 'C%c_'