Двойная выборка из одной таблицы - MySQL
Формулировка задачи:
есть одна таблица много столбиков
нужно сделать две выборки
выборка1: столбец10=значение1
выборка2: столбец10=значение2
потом выбрать
выборка1.столбец5=выборка2.столбец5
запрос с помещением результатов в доп таблицы я делал, но мне нужно сделать одним запросом
как то так я это представляю, но не работает
select field5, (select field5 from table as v1 where v1.field10 = значение1) as str1, (select field5 from table as v2 where v2.field10 = значение2) as str2 from table where str1=str2
Решение задачи: «Двойная выборка из одной таблицы»
textual
Листинг программы
SELECT * FROM ( SELECT * FROM tab1 WHERE col10 = val1 ) T1, ( SELECT * FROM tab1 WHERE col10 = val2 ) T2 WHERE T1.col5 = T2.col5
Объяснение кода листинга программы
В этом коде выполняется двойная выборка из таблицы tab1
. В первой выборке выбираются все строки, где значение столбца col10
равно val1
, а во второй выборке — все строки, где значение столбца col10
равно val2
. Затем результаты первой и второй выборок объединяются с помощью оператора WHERE, где условием является равенство значений столбца col5
в обеих выборках.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д