ACCESS 3 Query Criteria
ACCESS 3 Query Criteria
Spring 2010
Query Criteria
Access 2007: Query criteria examples
1. Introduction to Query criteria
2. Criteria for Text, Memo, and Hyperlink fields
3. Criteria for Number, Currency, and AutoNumber fields
4. Criteria for Date/Time fields
5. Criteria for other fields
When you want to limit the results of a query based on the values in a field, you use query criteria. A query
criterion is an expression that Access compares to query field values to determine whether to include the record
that contains each value. For example, = "Chicago" is an expression that Access can compare to values in a text
field in a query. If the value for that field in a given record is "Chicago", Access includes the record in the query
results.
Criteria Description
This criterion applies to a Number field, such as Price or UnitsInStock. It includes only
>25 and <50 those records where the Price or UnitsInStock field contains a value greater than 25 and
less than 50.
DateDiff ("yyyy", This criterion applies to a Date/Time field, such as BirthDate. Only records where the
[BirthDate], Date()) > number of years between a person's birthdate and today's date is greater than 30 are
30 included in the query result.
This criterion can be applied to any type of field to show records where the field value is
Is Null
null.
As you can see, criteria can look very different from each other, depending on the data type of the field to which
they apply and your specific requirements. Some criteria are simple, and use basic operators and constants. Others
are complex, and use functions, special operators, and include field references.
This topic lists several commonly used criteria by data type. If the examples given in this topic do not address your
specific needs, you might need to write your own criteria. To do that, you must first familiarize yourself with the
full list of functions, operators, special characters, and the syntax for expressions referring to fields and literals.
To add criteria to a query, you must open the query in Design view. You then identify the fields for which you want
to specify criteria. If the field is not already in the design grid, you add it by either dragging it from the query design
window to the field grid, or by double-clicking the field (Double-clicking the field automatically adds it to the next
empty column in the field grid.). Finally, you type the criteria in the Criteria row.
Criteria that you specify for different fields in the Criteria row are combined by using the AND operator. In other
words, the criteria specified in the City and BirthDate fields are interpreted like this:
City = "Chicago" AND BirthDate < DateAdd("yyyy", -40, Date())
BUT what if you want only one of these conditions to be met? In other words, if you have alternate criteria, how
do you enter them?
If you have alternate criteria, or two sets of independent criteria where it is sufficient to satisfy one set, you use
both the Criteria and the or rows in the design grid.
Criteria specified in the Criteria and or rows are combined using the OR operator, as shown below:
City = "Chicago" OR BirthDate < DateAdd("yyyy", -40, Date())
If you need to specify more alternatives, use the rows below the or row.
To include records
Use this criterion Query result
that...
Exactly match a value, Returns records where the CountryRegion field is set to
"China"
such as China China.
Do not match a value, Returns records where the CountryRegion field is set to a
Not "Mexico"
such as Mexico country/region other than Mexico.
Returns records for all countries/regions whose names start
with "U", such as UK, USA, and so on.
Begin with the specified Note When used in an expression, the asterisk (*)
Like U*
string, such as U represents any string of characters — it is also called a
wildcard character. For a list of such characters, see the
article Access wildcard character reference.
Do not begin with the
Returns records for all countries/regions whose names start
specified string, such as Not Like U*
with a character other than "U".
U
Returns records for all countries/regions that contain the
Contain the specified
Like "*Korea*" string "Korea".
string, such as Korea
Do not contain the
Returns records for all countries/regions that do not
specified string, such as Not Like "*Korea*"
contain the string "Korea".
Korea
End with the specified Returns records for all countries/regions whose names end
Like "*ina"
string, such as "ina" in "ina", such as China and Argentina.
Do not end with the
Returns records for all countries/regions that do not end in
specified string, such as Not Like "*ina"
"ina", such as China and Argentina.
"ina"
Contain null (or missing)
Is Null Returns records where there is no value in the field.
values
Do not contain null
Is Not Null Returns records where the value is not missing in the field.
values
Returns records where the field is set to a blank (but not
Contain zero-length null) value. For example, records of sales made to another
"" (a pair of quotes)
strings department might contain a blank value in the
CountryRegion field.
Do not contain zero- Returns records where the CountryRegion field has a
Not ""
length strings nonblank value.
Contains null values or Returns records where there is either no value in the field,
"" Or Is Null
zero-length strings or the field is set to a blank value.
Returns records where the CountryRegion field has a
Is not empty or blank Is Not Null And Not ""
nonblank, non-null value.
Follow a value, such as
Returns records of all countries/regions, beginning with
Mexico, when sorted in >= "Mexico"
Mexico and continuing through the end of the alphabet.
alphabetical order
Fall within a specific
Returns records for countries/regions whose names start
range, such as A through Like "[A-D]*"
with the letters "A" through "D".
D
Match one of two
values, such as USA or "USA" Or "UK" Returns records for USA and UK.
UK
Contain one of the In("France", "China", Returns records for all countries/regions specified in the
values in a list of values "Germany", "Japan") list.
Contain certain
characters at a specific Right([CountryRegion], 1) Returns records for all countries/regions where the last
position in the field = "y" letter is "y".
value
Satisfy length Returns records for countries/regions whose name is more
Len([CountryRegion]) > 10
requirements than 10 characters long.
Returns records for countries/regions, such as China and
Match a specific pattern Like "Chi??" Chile, whose names are five characters long and the first
three characters are "Chi".
Note The characters ? and _, when used in an expression, represent a single character — these are also called
wildcard characters. The character _ cannot be used in the same expression with the ? character, nor can it be
used in an expression with the * wildcard character. You may use the wildcard character _ in an expression that
also contains the % wildcard character.
OPTIONAL: A criterion that you specify for a Hyperlink field is, by default, applied to the display text portion of the
field value. To specify criteria for the destination Uniform Resource Locator (URL) portion of the value, use the
HyperlinkPart expression. The syntax for this expression is as follows:
HyperlinkPart([Table1].[Field1],1) = "http://www.microsoft.com/", where Table1 is the name of the table
containing the hyperlink field, Field1 is the hyperlink field, and http://www.microsoft.com is the URL you want to
match.
Yes/No fields In the Criteria row, type Yes to include records where the check box is selected. Type No to
include records where the check box is not selected.
Attachments In the Criteria row, type Is Null to include records that do not contain any attachments. Type
Is Not Null to include records that contain attachments.
Lookup fields There are two types of Lookup fields: those that look up values in an existing data source (by
using a foreign key), and those that are based on a list of values specified when the Lookup field is created.
Lookup fields that are based on a list of specified values are of the Text data type, and valid criteria are the
same as for other text fields.
The criteria you can use in a Lookup field based on values from an existing datasource depend on the data
type of the foreign key, rather than the data type of the data being looked up. For example, you may have a
Lookup field that displays Employee Name, but uses a foreign key that is of the Number data type. Because
the field stores a number instead of text, you use criteria that work for numbers; that is, >2.
If you do not know the data type of the foreign key, you can inspect the source table in Design view to
determine the data types of the field. To do this:
1. Locate the source table in the Navigation Pane.
2. Open the table in Design view by either:
o Clicking the table, and then pressing CTRL+ENTER
o Right-clicking the table, and then clicking Design View.
3. The data type for each field is listed in the Data Type column of the table design grid.
Multivalued fields Data in a multivalued field are stored as rows in a hidden table that Office Access 2007
creates and populates to represent the field. In query Design view, this is represented in the Field List by using
an expandable field. To use criteria for a multivalued field, you supply criteria for a single row of the hidden
table. To do this:
1. Create a query containing the multivalued field, and open it in Design view.
2. Expand the multivalued field by clicking the plus symbol (+) next to it — if the field is already expanded,
this is a minus symbol (-). Just below the name of the field, you will see a field representing a single value
of the multivalued field. This field will have the same name as the multivalued field, with the string .Value
appended.
3. Drag the multivalued field and its single value field to separate columns in the design grid. If you want to
see only the complete multivalue field in your results, clear the Show check box for the single value field.
4. Type your criteria in the Criteria row for the single value field, using criteria that is appropriate for
whatever type of data the values represent.
5. Each value in the multivalued field will be individually evaluated using the criteria you supply. For
example, you may have a multivalued field that stores a list of numbers. If you supply the criteria >5 AND
<3, any record where there is at least one value greater than 5 and one value less than 3 will match.