WHERE 'users.ID' = ? AND users.ID =
Очевидно, что вторая ссылка на users.ID
не нуждается в кавычках, так почему вы пытались процитировать первую?
В любом случае, MySQL "
и '
используются для кавычек строковые литералы , а `
(backtick) используется для кавычек идентификаторов . Если включен режим ANSI_QUOTES
SQL, тогда "
используется для цитирования идентификаторов, как это делают другие диалекты СУБД.
Если вам нужно заключить в кавычки, вам нужно цитировать каждую часть отдельно, поэтому правильное цитирование будет `users`.`ID`
или "users"."ID"
.
Тот факт, что '
иногда работает для цитирования идентификаторов, является просто странным мягким поведением и не должен использоваться, поскольку его легко спутать со строковыми литералами. Даже не знаю, как MySQL решает, является ли он строковым литералом или идентификатором, поэтому лучше никогда этого не делать.