I have confusion in the above title.
SELECT * FROM `parties` WHERE `party_name` LIKE '%DMK%' ORDER BY `id` ASC
Here I am getting 4 rows from DB, all row's party_name contains 'DMK' inside.
SELECT * FROM `parties` WHERE `party_name` LIKE 'DMK' ORDER BY `id` ASC
Here I am getting exact one row which contains party_name as 'DMK'
The first query is searching the part of strings. the second query is searching the exact string
IS it ??
or both are same?
Sorry for this type of question , Thanx
If you use LIKE
without % wild card is the same behavoiur of equals (=
).
So if you write:
SELECT * FROM parties WHERE party_name LIKE 'DMK' ORDER BY id ASC
Is the same of:
SELECT * FROM parties WHERE party_name = 'DMK' ORDER BY id ASC
If you write:
SELECT * FROM `parties` WHERE `party_name` LIKE '%DMK%' ORDER BY `id` ASC
You'll find all party_name who cointains DMK
If you write:
SELECT * FROM `parties` WHERE `party_name` LIKE '%DMK' ORDER BY `id` ASC
You'll find all party_name ends with DMK
If you write:
SELECT * FROM `parties` WHERE `party_name` LIKE 'DMK%' ORDER BY `id` ASC
You'll find all party_name starts with DMK