Задавайте вопросы, мы ответим
Вы не зашли.
Приветствую вас!
Сразу к сути:
Неактивен
Добавьте перед where
GROUP BY t1.id
Правда непонятно, а зачем Вам получать из базы t1.id, если Вы и так знаете, что он равен 3?
Не проще ли в этом случае выкинуть t1.id из списка в SELECT? В этом случае и группировать по t1.id не придётся.
Неактивен
И снова здравствуйте!
Благодарю за ответ, однако я пробовал использовать group by это не работает сейчас попробовал ещё раз, не работает, точнее он возвращает, но не правильные результаты. Попробую обяснить как это происходит в моём понимании: В таблице t1 много записей число 3 приведено для примера, также в ней более 10 столбцов и в реальном запросе я извлекаю почти все значения этих столбцов для конкретного идентификатора указанного в блоке where. в результате я получаю одну запись так как извлекаю по id а он с уникальным индексом, далее join t2 в которой для текущего идентификатора может быть несколько записей, допустим их две без использования агрегатных функций в выдаче я получю две записи, если сейчас выполнить sum() то всё корректно в выдаче будет одна запись в которой значения из t2 суммированы. Если же не делать sum(), а сделать join t3 то к двум записям добавятся записи из таблицы t3 например их там тоже две в результате будет 4 записи две из таблицы t2 и две из таблицы t3 все недостающие значения просто тиражируются поэтому применив sum() получается двухкратное преувеличение.
Неактивен
Приведите таблицы t1,t2 иt3 (структуру), небольшое количество данных к ним,
тот набор, что возвращает запрос с group by и тот набор, который Вы хотели бы получить.
Неактивен