Существует две таблицы, которые требуется соединить при помощи left join, а также подсчитать сумму строк, удовлетворяющих некоторому условию. При использовании where left join превращается в inner join, так как where обрезает не существующие записи.
SELECT Person.PersonID, JobID, sum(JobTime) FROM Job, Person LEFT JOIN JobTime ON Person.PersonID=JobTime.PersonID WHERE Job.SprintID=1 AND Job.PersonID=Person.PersonID GROUP BY Person.PersonID;
+----------+-------+--------------+
| PersonID | JobID | sum(JobTime) |
+----------+-------+--------------+
| 1 | 1 | 2569980 |
| 2 | 2 | 7686475 |
| 3 | 3 | NULL |
| 4 | 4 | 7816887 |
| 5 | 5 | 6721046 |
| 6 | 6 | NULL |
+----------+-------+--------------+
SELECT Person.PersonID, JobID, sum(JobTime) FROM Job, Person LEFT JOIN JobTime ON Person.PersonID=JobTime.PersonID WHERE Job.SprintID=1 AND Job.PersonID=Person.PersonID AND DATE(JobDate) BETWEEN '2017-06-26' AND '2017-07-08' GROUP BY Person.PersonID;
+----------+-------+--------------+
| PersonID | JobID | sum(JobTime) |
+----------+-------+--------------+
| 1 | 1 | 354577 |
| 2 | 2 | 323180 |
| 4 | 4 | 341232 |
| 5 | 5 | 298533 |
+----------+-------+--------------+
Требуется сделать так, чтобы строки с null тоже были включены в таблицу.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Согласно этому отчёту, можно выполнить SQL injection через User-AgentХотелось бы понять, как это работает, и каким образом обезопаситься от подобного...