Like 演算子 (Microsoft Access SQL)Like operator (Microsoft Access SQL)

適用先: Access 2013 | Access 2016Applies to: Access 2013 | Access 2016

文字列式を SQL 式のパターンと比較します。Compares a string expression to a pattern in an SQL expression.


Like"pattern"expression Like "pattern"

Like 演算子には、次の指定項目があります。The Like operator syntax has these parts:

パーツPart 説明Description
expressionexpression WHERE 句で使用される SQL 式。SQL expression used in a WHERE clause.
patternpattern _式_を比較する文字列または文字列リテラルを指定します。String or character string literal against which expression is compared.


Like 演算子を使用すると、指定したパターンに一致するフィールド値を探すことができます。You can use the Like operator to find values in a field that match the pattern you specify. _Pattern_の場合は、完全な値 (たとえば、 Like "Smith") を指定することも、ワイルドカード文字を使用して値の範囲を検索することもできLike "Sm*")ます (たとえば、のようにワイルドカード文字を使用して値の範囲を検索することもできます)。For pattern, you can specify the complete value (for example, Like "Smith"), or you can use wildcard characters to find a range of values (for example, ), or you can use wildcard characters to find a range of values (for example, Like "Sm*").

式の中では、 Like 演算子を使用してフィールド値と文字列式とを比較することができます。In an expression, you can use the Like operator to compare a field value to a string expression. たとえば、SQL クエリに入力Like "C*"した場合、クエリは C 文字で始まるすべてのフィールド値を返します。パラメータークエリでは、検索するパターンの入力をユーザーに求めることができます。For example, if you enter Like "C*" in an SQL query, the query returns all field values beginning with the letter C. In a parameter query, you can prompt the user for a pattern to search for.

次の例では、文字 "P" で始まり、"A" から "F" までの任意の 1 文字が続き、最後に半角の数字が 3 桁並ぶようなデータを返します。The following example returns data that begins with the letter P followed by any letter between A and F and three digits:

Like "P[A-F]###"

Like を使用したさまざまな検索パターンの例を、次の表に示します。The following table shows how you can use Like to test expressions for different patterns.

一致の種類Kind of match PatternPattern Match (True を返します)Match (returns True) 一致なし (False を返します)No match (returns False)
複数の文字Multiple characters a * aa*a aa、aBa、aBBBaaa, aBa, aBBBa 定期aBC
lab abc、AABB、Xababc, AABB, Xab aZb、bacaZb, bac
特殊文字Special character a [*] aa[*]a a * aa*a aaaaaa
複数の文字Multiple characters lab* abcdefg、abcabcdefg, abc cab、aabcab, aab
1 文字Single character a? aa?a aaa、a3a、aBaaaa, a3a, aBa aBBBaaBBBa
1 つの数字Single digit a # aa#a a0a, a1a, a2aa0a, a1a, a2a aaa、a10aaaa, a10a
指定範囲内の文字Range of characters [a-z][a-z] f、p、jf, p, j 2、&2, &
指定範囲外の文字Outside a range [! a-z] 9、&、%9, &, % b、ab, a
数字以外の文字Not a digit [! 0-9] A、a、&、~A, a, &, ~ 0、1、90, 1, 9
組み合わせCombined a [! b-m] #a[!b-m]# An9, az0, a99An9, az0, a99 abc、aj0abc, aj0


この例では、名前が A から D の文字で始まる従業員の一覧を返します。このメソッドは、EnumFields プロシージャを呼び出します。これは、SELECT ステートメントの例で確認できます。This example returns a list of employees whose names begin with the letters A through D. It calls the EnumFields procedure, which you can find in the SELECT statement example.

Sub LikeX() 
    Dim dbs As Database, rst As Recordset 
    ' Modify this line to include the path to Northwind 
    ' on your computer. 
    Set dbs = OpenDatabase("Northwind.mdb") 
    ' Return a list of employees whose names begin with 
    ' the letters A through D. 
    Set rst = dbs.OpenRecordset("SELECT LastName," _ 
        & " FirstName FROM Employees" _ 
        & " WHERE LastName Like '[A-D]*';") 
    ' Populate the Recordset. 
    ' Call EnumFields to print the contents of the  
    ' Recordset. Pass the Recordset object and desired 
    ' field width. 
    EnumFields rst, 15 
End Sub

関連項目See also

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.