Sql Query для расчета производительности - PullRequest
0 голосов
/ 24 октября 2018

У меня есть следующая схема БД.

-- Companies
id
name

--financial_report
id
company_id
quarter (Q1, Q2, Q3, Q4)
fiscal_year (2018, 2017)
revenue
employees

Я хочу получить следующий результат для компаний на основе квартала и финансового года ..

Образец результата за 3 квартал 2008 года

+-------------+-----------+---------+
| CompanyName | Employees | Revenue |
+-------------+-----------+---------+
| Company1    |        12 |  50,000 |
+-------------+-----------+---------+

SQLFIDDLE: http://sqlfiddle.com/#!9/9813bf

Спасибо

1 Ответ

0 голосов
/ 24 октября 2018

Вы можете использовать условное агрегирование с Group By:

SELECT 
  fr.fiscal_year, 
  fr.quarter, 
  c.name AS CompanyName, 
  SUM(fr.employees) AS Employees, 
  SUM(fr.revenue) AS Revenue 
FROM companies AS c 
JOIN financial_reports AS fr ON c.id = fr.company_id
GROUP BY fr.fiscal_year, 
         fr.quarter, 
         c.id  

DB Fiddle DEMO

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