Intereting Posts
Иерархический запрос Oracle Выполнение подготовленных в NHibernate операторов в SQL Server Management Studio Выполнить INSERT, если таблица пуста? Перенос SQL хранимых значений DateTime в наилучшую практику DateTimeOffset? Индекс, охватывающий несколько таблиц в PostgreSQL Поставщик членства использовать или не использовать? Как запросить для всех групп типа 'foo', которые содержат user_x? (таблица «многие-ко-многим») Странные результаты с использованием порядка и ограничения MySQL вставляет из одной базы данных в другую Как я могу поддерживать уникальный идентификатор среди нескольких таблиц базы данных? Как добавить пробел перед моим номером, если это одна цифра? Использование Linq в профсоюзе? Будет ли перемещение таблицы / раздела в другое требование прерывания табличного пространства к доступу к указанной таблице / разделу? asp.net mvc и sql-запросы SQL, который возвращает все перестановки суммированного столбца

mysql объединяет 2 таблицы, 2 столбца

допустим, у меня есть

таблица student_data и поля


 ╔════╦════════════╦════════════╗
 ║ ID ║ CREATED_BY ║ UPDATED_BY ║
 ╠════╬════════════╬════════════╣
 ║ 1 ║ 1 ║ 2 ║
 ╚════╩════════════╩════════════╝

table creator_updater и поля


 ╔════╦════════════════╗
 ║ ID ║ ИМЯ ║
 ╠════╬════════════════╣
 ║ 1 ║ Создатель ║
 ║ 2 ║ Второй Создатель ║
 ╚════╩════════════════╝

так что я задаюсь вопросом, что такое точный код, чтобы он показывал

 student_data

 ╔════╦═══════════════╦══════════════════════╗
 ║ ID ║ CREATED_BY_ID ║ LATEST_UPDATED_BY_ID ║
 ╠════╬═══════════════╬══════════════════════╣
 ║ 1 ║ Создатель ║ Второй Создатель ║
 ╚════╩═══════════════╩══════════════════════╝

Я попробовал синтаксис соединения, но он кажется другим

вам нужно дважды присоединиться к таблице creator_updater чтобы вы могли получить имена двух столбцов.

 SELECT a.id, b.name created_by_id, c.name latest_updated_by_id FROM student_data a INNER JOIN creator_updater b ON a.created_by = b.id INNER JOIN creator_updater c ON a.updated_by = c.id 
  • Демоверсия SQLFiddle

но код выше не будет работать, если один из столбцов имеет значение NULL , если это так, используйте LEFT JOIN вместо INNER JOIN

 SELECT a.id, b.name created_by_id, c.name latest_updated_by_id FROM student_data a LEFT JOIN creator_updater b ON a.created_by = b.id LEFT JOIN creator_updater c ON a.updated_by = c.id 
  • Демоверсия SQLFiddle

Для получения дополнительной информации о объединениях

  • Визуальное представление соединений SQL