Я пытаюсь объединить несколько таблиц, но это не удается в моем операторе соединения.Я полагаю, что это потому, что имя столбца во втором соединении является «имя» и, возможно, MySQL думает, что я пытаюсь получить доступ к атрибуту?Как я могу обойти это?
SELECT surgery_city.*, s.surgeon_type, st.abbrev
FROM surgery_city
LEFT JOIN surgery_key as s ON s.surg_id = treatment_id
LEFT JOIN states as st ON st.name = surgery_city.state
WHERE treatment_id='10001'
Проблема заключается во втором левом соединении, где я ссылаюсь на st.name - какие-либо идеи о том, как я могу ссылаться на этот столбец правильно?К сожалению, изменение имени столбца в таблице на данный момент невозможно: (..
Спасибо,
Серебряный тигр
ОБНОВЛЕНИЕ:
Ошибка, которую я получаю в приведенном выше запросе:
[Err] 1267 - Недопустимое сочетание параметров сортировки (utf8_unicode_ci, IMPLICIT) и (utf8_general_ci, IMPLICIT) для операции '='
когда я окружаю поле обратными галочками, я получаю следующее:
LEFT JOIN states as st ON `st.name` = seo_surgery_city.state
Вместо этого я получаю следующее:
[Err] 1054 - Неизвестный столбец 'st.name' in 'on оговорка '
Он также не срабатывает на
LEFT JOIN states as st ON st.`name` = seo_surgery_city.state
(одинарные кавычки = обратные тики там, но здесь он не будет отображаться должным образом)
[Err] 1267 - незаконное смешиваниепараметров сортировки (utf8_unicode_ci, IMPLICIT) и (utf8_general_ci, IMPLICIT) для операции '='
Также происходит сбой
LEFT JOIN states as st ON `st`.`name` = seo_surgery_city.state
[Err] 1267 - недопустимое сочетание параметров сортировки (utf8_unicode_ci, IMPLICIT)и (utf8_general_ci, IMPLICIT) для операции '='