У меня проблема с запросом, который используется для построения таблицы лиги. У меня есть три таблицы: результаты, лиги и собаки.
Проблема в том, что в некоторых лигах итоговый результат в два раза больше, чем должен быть. Некоторые собаки могут быть в двух лигах. Так что даже с SELECT DISTINCT - в SUM есть два результата. Таким образом, при первом присоединении ВСЕГО неверно, несмотря на то, что только одна лига фильтруется после СОЕДИНЕНИЯ с league_entry.league = 'veteran'. Любая помощь очень ценится.
Вот мой запрос:
$myrows = $wpdb->get_results( "
SELECT DISTINCT event_results.rID, event_results.dID, event_results.uID, event_results.year, SUM(event_results.Placing AS total), dog_table.name, dog_table.breed, dog_table.cross_breed
FROM event_results
JOIN league_entry ON event_results.dID = league_entry.dID AND league_entry.league = 'veteran' AND event_results.year = '2020'
JOIN dog_table ON event_results.dID = dog_table.dID
GROUP BY event_results.dID
ORDER BY total DESC ");