Вывод результата из т1 по отсортированным результатам в т2 - MySQL
Формулировка задачи:
Имеется 2 таблицы:
test1
и
test2
И мне кажется я чего-то не понимаю в JOIN ибо работает все не так как мне нужно)
результат должен быть 3124, а выдает 1234
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 |
id | name |
1 | A |
2 | B |
3 | C |
4 | D |
SELECT id,name FROM test2 LEFT JOIN (SELECT id AS idt1 FROM test1 ORDER BY `date` ASC) s ON id=idt1
Решение задачи: «Вывод результата из т1 по отсортированным результатам в т2»
textual
Листинг программы
SELECT T2.id FROM test2 T2 LEFT JOIN test1 T1 ON T2.id=T1.id ORDER BY T1.`date` ASC
Объяснение кода листинга программы
В данном коде происходит следующее:
- Выполняется операция SELECT, которая предназначена для выбора данных из базы данных.
- В качестве выбранных данных выступает столбец T2.id из таблицы test2.
- Для выбора используются условия объединения таблиц, где T2.id равен T1.id.
- Результаты выборки сортируются по столбцу T1.
date
в порядке возрастания (ASC). - В итоговом результате выводятся только уникальные значения T2.id. Список элементов кода:
- SELECT T2.id FROM test2 T2 LEFT JOIN test1 T1 ON T2.id=T1.id
- ORDER BY T1.
date
ASC Выделенные названия и значения переменных: - T2.id - выбранный столбец из таблицы test2.
- T1.id - столбец из таблицы test1, используемый в условиях объединения таблиц.
- T1.
date
- столбец из таблицы test1, по которому происходит сортировка результатов.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д