Несколько таблиц соединения с суммой - PullRequest
0 голосов
/ 22 мая 2018

Мне нужно присоединиться к следующим таблицам

  1. table_quotation
  2. table_customer
  3. table_project
  4. table_quoted_products
  5. table_estimate

здесь table_quoted_products имеет отношение один ко многим с table_quotation, аналогично, каждый продукт в table_quoted_products имеет несколько элементов в table_estimate.Таким образом, в 1 предложении может быть несколько продуктов в table_quoted_products, и у каждого продукта может быть несколько элементов в table_estimate для построения оценочной стоимости каждого элемента.

Теперь мне нужен запрос для построения таблицы, которая может дать мне название цитаты изtable_project, имя клиента из table_customer, общая сумма котировочной стоимости продажи из table_quotation и общая стоимость для того же предложения из table_estimate.Я пробовал следующий запрос, но функция суммы умножается на количество продуктов.

SELECT a.quote_id
     , a.check_status
     , a.approve_status
     , b.title as project
     , c.customer
     , SUM(d.quantity*d.quoted_rate) as sale
     , SUM(e.qty*e.rate) as cost from table_quotation a 
  JOIN table_project b on a.project_id = b.project_id
  JOIN table_customer c on a.customer_id = c.id 
  JOIN table_quoted_product d on a.quote_id = d.quote_id 
  JOIN table_estimate e on a.quote_id = e.ref_id 
 WHERE e.ref_type = 2 and a.approve_status = 0 
 GROUP 
    BY a.quote_id

Таблица сметы имеет 2 вида оценки, 1 для шаблонного продукта для одной единицы и 2 для указанных продуктов, поэтому мне нужна стоимость только для указанных продуктов.Где мне нужно поменять, чтобы получить точную продажу и ориентировочную стоимость?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...