1. Никогда не пиши SQL-запрос без псевдонимов (alias.col_name) или без полного наименования таблицы (table_name.col_name). Это приведёт к ошибкам и сделает код не читаемым. Пример с псевдонимами (alias): SELECT * FROM table1 AS t1
LEFT JOIN table2 AS t2 ON t1.id = t2.id Пример с полными наименованиями таблиц: SELECT * FROM table1
LEFT JOIN table2 ON table1.id = table2.id 2. Не используй RIGHT JOIN, вместо него пиши LEFT JOIN. FULL JOIN есть не во всех базах данных, но его можно эмулировать: SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id
UNION
SELECT * FROM table1 RIGHT JOIN table2 ON table1.id = table2.id А если нет RIGHT JOIN то эмуляция выглядит так: SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id
UNION
SELECT * FROM table2 LEFT JOIN table1 ON table2.id = table1.id 3. Всегда оставляй дату в формате даты и никогда просто числом, если нужен месяц, оставь просто первое число месяца. 4. Если нужен отчёт за какой-то период, то сначала сгенерируй таблицу с да