Вывод результата из т1 по отсортированным результатам в т2 - MySQL

Узнай цену своей работы

Формулировка задачи:

Имеется 2 таблицы: test1
id date
1 2017-07-20 05:42:52
2 2017-07-21 05:43:05
3 2017-01-01 05:43:09
4 2017-07-22 05:43:23
и test2
id name
1 A
2 B
3 C
4 D
И мне кажется я чего-то не понимаю в JOIN ибо работает все не так как мне нужно)
SELECT id,name FROM test2 LEFT JOIN (SELECT id AS idt1 FROM test1 ORDER BY `date` ASC) s ON id=idt1
результат должен быть 3124, а выдает 1234

Решение задачи: «Вывод результата из т1 по отсортированным результатам в т2»

textual
Листинг программы
SELECT T2.id FROM test2 T2 LEFT JOIN test1 T1 ON T2.id=T1.id ORDER BY T1.`date` ASC

Объяснение кода листинга программы

В данном коде происходит следующее:

  1. Выполняется операция SELECT, которая предназначена для выбора данных из базы данных.
  2. В качестве выбранных данных выступает столбец T2.id из таблицы test2.
  3. Для выбора используются условия объединения таблиц, где T2.id равен T1.id.
  4. Результаты выборки сортируются по столбцу T1.date в порядке возрастания (ASC).
  5. В итоговом результате выводятся только уникальные значения T2.id. Список элементов кода:
  6. SELECT T2.id FROM test2 T2 LEFT JOIN test1 T1 ON T2.id=T1.id
  7. ORDER BY T1.date ASC Выделенные названия и значения переменных:
  8. T2.id - выбранный столбец из таблицы test2.
  9. T1.id - столбец из таблицы test1, используемый в условиях объединения таблиц.
  10. T1.date - столбец из таблицы test1, по которому происходит сортировка результатов.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы