У меня есть запрос, который я должен изменить, чтобы удовлетворить некоторые новые характеристики:Как решить эту проблему с помощью SQL?
Большая фотография этого запроса ниже:
У меня есть несколько ВНУТРЕННЕГО JOINS которые составляют результирующий набор INNER JOINS
, тогда этот результирующий набор равен LEFT JOINED
с A1
сначала, затем во-вторых с SCH
. Это текущее состояние запроса.
Теперь, что я должен сделать, это добавить anoter result set
, A2
который для common part of A1 and A2
(желтой части), чтобы отобразить записи с текущими условиями в GROUP BY.
Моя проблема заключается в том, что мне еще нужно отобразить НЕКОТОРЫЕ записи в синей области (которые являются общими для исходного набора, но не являются общими для нового набора, который я добавляю).
Я не знаю, как я могу отменить записи, которые находятся в синей области, и отфильтровать их (выберите те, которые соответствуют только одному условию), без фильтрации записей с A2
. Я не знаю, какой JOIN использовать для A2
(думаю, я должен использовать INNER JOIN
, но я не уверен, поэтому на моей диаграмме есть отметка ?
).
FILTER blue -> ALL yellow
Изображения запроса? Это что-то новое в SQL. Но мы предпочитаем традиционные методы: схема, образцы, ожидаемые результаты и фактические результаты. –
Вам, вероятно, потребуется левое соединение, но можете ли вы показать несколько строк каждой из четырех таблиц и ожидаемого результата? –
@AlmaDoMundo Я знаю, что вы имеете в виду, и я согласен с вами, но, к сожалению, это все, что я могу предоставить. Отображение всего запроса и всех других деталей, которые я знаю в «традиционном» вопросе, помогло бы, в этом случае мне потребовалось бы всего 1 час, чтобы изменить (форматировать) запрос, полчаса, чтобы вы поняли запрос и для меня, чтобы объяснить, и, к сожалению, это немного срочно для меня. Пожалуйста, поймите и не ненавидите. –