Using AND, OR, and NOT Operators in Search

SOLIDWORKS PDM supports AND, OR, and NOT operators in input search criteria in edit-box type fields on search cards.

You can use these search operators in any search card, Web2 search, the SOLIDWORKS PDM Search tool, and quick search.

Rules:

  • Search strings are case-insensitive.
  • Operators are case-sensitive and must be capitalized.
  • For variable values, the valid operators are: =, !=, <, <=, >, >=, and <>.
  • Rules for using escape symbol:
    Search for String with Input String
    Double quotation marks String with an escape symbol \.

    For example, to search for "speaker", enter the string as \"speaker\"

    Double quotation marks that are a part of an explicit search

    String with an escape symbol \.
    For example, to search for 3" pipe, enter the string as "3\" pipe".
    The use of the escape symbol \ is optional in cases where you use a double quotation mark " as an inch constant.

    For example, to search for 3", you may enter the string as 3".

  • In case of multiple operators used in a search, SOLIDWORKS PDM evaluates the search operators in this order: (), NOT, AND, and OR.
  • You can use AND, OR, and NOT search operators or their equivalent symbols&, |, ! respectively.
  • You can search for TEXT, INT, FLOAT, and DATE type data.

    If you do not specify the data type explicitly and the multi-variable field has:

    • TEXT and non-TEXT variables, the applied data type is TEXT.
    • DATE and non-DATE variables, the applied data type is TEXT.
    • FLOAT and INT variables, the applied data type is FLOAT.
  • You can use the AND and OR operators with or without the :. For example, for AND operator, use AND, AND:.
  • Use the single colon specifier, :, when you want to search for values across multiple configurations or variables.

    For example, when you enter the input string as:
    • :part1 part2 part3 part4, SOLIDWORKS PDM returns the matches that may be present in different configurations.
    • :!part1, SOLIDWORKS PDM returns the matches that do not have part1 in any of the configurations.
  • Along with :, you can nest search strings within {}.

    For example, for the input string :{part1 part2} part3, SOLIDWORKS PDM returns only those matches where part1 part2 are found in the same configuration.

  • The search field supports * and ? as wildcard characters.
  • You can use = to search for an exact string. For example, to search for a Tools string, enter the search string as =Tools.
  • If a string contains more than one word, you can use "" to search for the exact string. For example, to search for pipe tools, enter "pipe tools".
When you upgrade to SOLIDWORKS PDM 2020, the previously saved searches are upgraded to follow the new search rules while maintaining the previous behavior and search results.

AND (&) Operator

Searches for results that include both the term before and the term after the operator.

Search String Examples Description
term1 AND term2

TERM1 & TERM2

AND: term1 term2

&: term1 term2

Returns the match that includes term1 and term2. Terms may appear in any order in the results.
Examples of valid search results:
  • term1 term2
  • term2 term1
  • term3 term1 term2
"(*" term1 term2 "*)" OR "(*)" term1 term2

AND is the implicit operator for the SPACE character.

Returns the match that is enclosed in the parentheses and that contains term1 and term2.

Examples of valid search results:
  • (term1 term2)
  • (term2 term1 term3)
"(*" "term1 term2" "*)" or "(*)" "term1 term2"

AND is the implicit operator for the SPACE character.

Returns the match that is enclosed in the parentheses and that contains the string term1 term2.

Examples of valid search results:
  • (term1 term2)
  • (term3 term1 term2 term4)Searches for results that include the term before or after the operator or both.

OR (|) Operator

Search String Examples Description
term1 OR term2

Searches for results that include the term before or after theTERM1 | TERM2

OR: term1 term2

|: term1 term2

Returns the match that includes either or both term1 and term2.
Examples of valid search results:
  • term1
  • term2
  • term2 term1
"(*" term1 OR term2 "*)" or "(*)" (term1 OR term2)

Returns the match that is enclosed in the parentheses and that includes either term1 or term2 or both.

Examples of valid search results:
  • (term1)
  • (term3 term2)
  • (term2 term1 term4)

NOT (!) Operator

Searches for results that do not include the term after the operator.

Search String Examples Description
NOT TERM1 Returns values other than term1.
Examples of valid search results:
  • term2
  • term3 term4
!="term1 term2" Returns values other than string term1 term2.
Examples of valid search results:
  • term3
  • term2 term1
!(2019-01-11)

Returns dates other than 2019-01-11.

Examples of valid search results:
  • 2019-02-12
  • 2017-03-11