Welcome to my ASP Code Website

Like Statement in SQL - Inexact Wildcard Matches



If you're writing a SQL statement, sometimes you want wildcarded matches. The LIKE command lets you get matches that are similar to a phrase you supply.

Normally, if you write a SQL statement, you're looking for an exact match. If you're looking for all books written by SMITH, you would write:

SELECT * from books where author_name = 'SMITH';

and only those rows would be returned. What, though, if you are doing a search and want everything CONTAINING that word? What, for example, if you have a person put the word HORSE into your search box and want to return every title in your library containing the word HORSE? In that case you would write

SELECT * from books where book_title LIKE '%HORSE%';

The % is the wildcard symbol in SQL. If you wanted everything that began with HORSE, you would say

SELECT * from books where book_title LIKE 'HORSE%';

but usually you want the % on both sides of the word, so that if the HORSE shows up ANYWHERE in the title, you get the results.

SQL Command Listing