Monday, August 29, 2011

SQL LIKE CLAUSE


We will use the Company table to illustrate the SQL LIKE clause usage:

FirstName
LastName
Email
DOB
Phone
Scott
Armstrong
Armstrong.yahoo.com
2/4/1968
887-676-2321
Adam
Red
red@himail.com
4/4/1978
792 343-2422
Santo
Harry
Harry@livingin.org
5/24/1978
416 323-3232
Jackson
Jimmy
Jimmy@supermail.co.uk
20/10/1980
416 323-8888

The SQL LIKE clause is very useful when you want to specify a search condition within your SQL WHERE clause, based on a part of a column contents. For example if you want to select all Company having FirstName starting with 'J' you need to use the following SQL statement:
SELECT  *  FROM  Company WHERE FirstName LIKE  'J%'
Here is the result of the SQL statement above:

FirstName
LastName
Email
DOB
Phone
Jackson
Jimmy
Jimmy@supermail.co.uk
20/10/1980
416 323-8888

If you want to select all Company with phone numbers starting with '416' you will use this SQL expression:
SELECT  * FROM Company WHERE Phone LIKE '416%'.

The '%' is a so called wildcard character and represents any string in our pattern.You can put the wildcard anywhere in the string following the SQL LIKE clause and you can put as many wildcards as you like too.

Note that different databases use different characters as wildcard characters, for example '%' is a wildcard character for MS SQL Server representing any string, and '*' is the corresponding wildcard character used in MS Access.Another wildcard character is '_' representing any single character.

The '[]' specifies a range of characters. Have a look at the following SQL statement:
SELECT  * FROM Company WHERE Phone LIKE '[4-6]_6%'.
This SQL expression will return all Company satisfying the following conditions:
    * The Phone column starts with a digit between 4 and 6 ([4-6])
    * Second character in the Phone column can be anything (_)
    * The third character in the Phone column is 6 (6)
    * The remainder of the Phone column can be any character string (%)
Here is the result of this SQL expression:
 

FirstName
Last Name
 Email
DOB  
Phone
San to
Harry
Harry@livingin.org
5/24/1978
416 323-3232
Jackson
Jimmy
Jimmy@supermail.co.uk
20/10/1980
416 323-8888



MORE BASIC SQL COMMANDS

No comments:

Post a Comment