У меня есть два SQL-запроса, которые я выполняю из winform формы C #, и я хочу объединить их.
Первый:
SELECT * FROM ES_TOOL INNER JOIN ES_HARDWARE ON ES_HARDWARE.eshw_ID = ES_TOOL.ESTOOL_HARDWARE
INNER JOIN ES_PAYMENT on ES_payment.espay_id = es_TOOL.estool_payment
Это дает список всехинструменты и связанные с ними платежные и аппаратные требования.
И вторая запускается для каждой записи, которую возвращает первый запрос, с помощью цикла ac # for:
SELECT avg(a.esmrk_value) from ES_MARK a Inner Join ES_TOOL_CHAPTER b
on a.esmark_tool_chapter= b.estch_id WHERE b.estch_tool=@tool
Это возвращает для каждого инструмента среднюю оценку, которую они имеютбыл награжден в таблице es_mark.
NB Оценки начисляются за отдельные «главы» инструментов.Итак, чтобы найти все метки для инструмента, нам нужно увидеть таблицу ES_TOOL_CHAPTER для списка глав инструментов.Главы инструментов - это то, что получает оценки в таблице ES_MARK.
Я пробовал группировать и больше объединений, но я просто смущаюсь по минутам, поэтому я был бы признателен за любую помощь по этому вопросу.Я в основном ищу один запрос, который вернет все результаты первого запроса с дополнительным столбцом для средней оценки.
Спасибо.
Редактировать: @tool представляет идентификатор инструмента.