sql >> Database teknologi >  >> RDS >> Mysql

Efterfølgende blanktegn i varchar skal overvejes i sammenligning

Jeg må antage, at du bruger MySQL 5.x, fordi MySQL 4.x ikke gemmer efterfølgende mellemrum i en VARCHAR-kolonne.

Brug af standarden = operatør i MySQL, som du har angivet, tages der ikke hensyn til efterfølgende mellemrum:

SELECT 'this' = 'this ' returnerer TRUE

Men LIKE sammenligner strengene tegn for tegn, så mellemrum er betydelige.

SELECT 'this' LIKE 'this ' returnerer FALSK.

Begge = og LIKE kan ikke skelne mellem store og små bogstaver ved at bruge standardsorteringen. Brug COLLATE klausul for at specificere sorteringen, hvis du har brug for at sammenligne dem på en måde, hvorpå der skelnes mellem store og små bogstaver.



  1. Hvordan gemmer man mappe / hierarki / træstruktur i databasen?

  2. ASP, MySQL og UTF-8

  3. STR_TO_DATE() Eksempler – MySQL

  4. Hvordan PERIOD_DIFF() virker i MariaDB