У меня две таблицы,
table1
=======================================
pid pname coldate col4
---------------------------------------
1 Tesitng Name1 2019-01-01 self
2 Tesitng Name2 2020-01-01 self
3 Tesitng Name3 2020-03-01 self2
4 Tesitng Name4 2020-04-04 self2
5 Tesitng Name5 2020-04-05 self3
в table1 pid есть уникальный ключ
table2 //which have more than 600k rows
=======================================
billid rate pid
---------------------------------------
1 30 1
2 50 1
3 40 1
4 10 3
/// В table2 billid есть уникальный ключ
Я пытаюсь показать все строки таблицы1 с суммой столбца ставки таблицы2, где table1.pid = table2.pid
Результат должен быть таким
table1
=======================================================
pid pname coldate col4 total
-------------------------------------------------------
1 Tesitng Name1 2019-01-01 self 120
2 Tesitng Name2 2020-01-01 self 0
Я использую этот запрос
SELECT
t1.*
, ttl.total
FROM table1 t1
inner join
(SELECT pid, sum(rate) as total
FROM table2
GROUP BY pid) as ttl
on ttl.pid=t1.pid
WHERE
t1.coldate BETWEEN '2020-01-01' AND '2020-04-01'
AND t1.col4 = 'self'
ORDER BY t1.pid DESC;
но он не показывает строку таблицы1, для которой pid отсутствует в таблице2, скажите, пожалуйста, какой самый быстрый способ выполнить это действие я использую php с mysql ..