Musím předpokládat, že používáte MySQL 5.x, protože MySQL 4.x neukládá koncové mezery ve sloupci VARCHAR.
Pomocí standardního =
operátor v MySQL, jak jste uvedl, koncové mezery se neberou v úvahu:
SELECT 'this' = 'this '
vrátí TRUE
Nicméně LIKE
porovnává řetězce znak po znaku, takže mezery na konci jsou významné.
SELECT 'this' LIKE 'this '
vrátí FALSE.
Oba =
a LIKE
nemusí rozlišovat malá a velká písmena při použití výchozího řazení. Použijte COLLATE
klauzule k určení řazení, pokud je potřebujete porovnat způsobem rozlišujícím malá a velká písmena.