У меня есть SQL-оператор:
SELECT * FROM customers WHERE BINARY login='xxx' AND password='yyyy'
Нет никаких полей блоба/двоичного файла в таблице, мне нужен ДВОИЧНЫЙ ФАЙЛ после ГДЕ, что еще это делает?
BINARY
- это встроенное ключевое слово после предложения WHERE
, которое вызывает сравнение для точного совпадения с учетом регистра.
Кстати, вы также можете сделать столбцы чувствительными к регистру, добавив ключевое слово BINARY
при создании таблицы.
https://dev.mysql.com/doc/refman/8.0/en/cast-functions.html#operator_binary
Оператор BINARY преобразует следующую за ним строку в двоичную. Это простой способ заставить сравнивать байт за байтом, а не символ за символом. BINARY также заставляет пробелы в конце строки быть значимыми.
SELECT 'user' = 'UsEr' // true
SELECT BINARY 'user' = 'UsEr' // false