Двойная выборка из одной таблицы - MySQL

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

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

есть одна таблица много столбиков нужно сделать две выборки выборка1: столбец10=значение1 выборка2: столбец10=значение2 потом выбрать выборка1.столбец5=выборка2.столбец5 запрос с помещением результатов в доп таблицы я делал, но мне нужно сделать одним запросом как то так я это представляю, но не работает
Листинг программы
  1. select field5,
  2. (select field5 from table as v1 where v1.field10 = значение1) as str1,
  3. (select field5 from table as v2 where v2.field10 = значение2) as str2
  4. from table
  5. where str1=str2

Решение задачи: «Двойная выборка из одной таблицы»

textual
Листинг программы
  1. SELECT *
  2. FROM
  3.   (
  4.    SELECT *
  5.    FROM tab1
  6.    WHERE col10 = val1
  7.   ) T1,
  8.   (
  9.    SELECT *
  10.    FROM tab1
  11.    WHERE col10 = val2
  12.   ) T2
  13. WHERE T1.col5 = T2.col5

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

В этом коде выполняется двойная выборка из таблицы tab1. В первой выборке выбираются все строки, где значение столбца col10 равно val1, а во второй выборке — все строки, где значение столбца col10 равно val2. Затем результаты первой и второй выборок объединяются с помощью оператора WHERE, где условием является равенство значений столбца col5 в обеих выборках.

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


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

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

15   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут