Your query, as designed, will bring all quotes that contain the string
Q-100. To use equality, your query should read
[ SELECT Quote_Nr__c,Web_Key__c, Approval_Status__c, Id, Presented_Date__c,Valid_Until__c
WHERE Quote_Nr__c = 'Q-100']
There is a big difference between
=: Expression is true if the value in the specified fieldName equals the specified value in the expression. String comparisons using
the equals operator are case-sensitive for unique case-sensitive
fields and case-insensitive for all other fields.
LIKE: Expression is true if the value in the specified fieldName matches the characters of the text string in the specified value. The
LIKE operator in SOQL and SOSL is similar to the LIKE operator in SQL;
it provides a mechanism for matching partial text strings and includes
support for wildcards. The % and _ wildcards are supported for the
LIKE operator. The % wildcard matches zero or more characters. The _
wildcard matches exactly one character. The text string in the
specified value must be enclosed in single quotes.
The LIKE operator
is supported for string fields only. The LIKE operator performs a
case-insensitive match, unlike the case-sensitive matching in SQL. The
LIKE operator in SOQL and SOSL supports escaping of special characters
% or _. Don’t use the backslash character in a search except to escape
a special character.
For example, the following query matches Appleton, Apple, and Appl, but not Bappl
SELECT AccountId, FirstName, lastname FROM Contact WHERE lastname LIKE 'appl%'
I recommend you read this article to familiarize yourself with the