Все это должно быть псевдо, так как я нахожусь на своем телефоне, и у меня нет доступа к Интернету сейчас, потому что я только что переехал, но это вывело меня из себя.Это также означает, что я не могу делать блоки кода, пожалуйста, потерпите меня:
У меня есть таблица с суммами, и у меня есть таблица с метками.Я хочу суммировать суммы в первой таблице, сгруппированные по меткам.Проблема в том, что если в таблице нет записей для метки с суммами, то я не получаю записи в наборе результатов для этой метки.Мне нужна запись там с нулями для поля количества таблиц.Вот как могут выглядеть некоторые примеры данных:
Amount_table:
Столбцы: id, tpa, amt, link_to_label_table
Данные:
1, GTL, 2000, 1
2, GTL, 1000, 1
Label_table:
Столбцы: link_to_amount_table, label_name
Данные:
1, Label1
2, Label2
Запрос:
Select at.tpa, sum(at.amt) as amt, lt.label_name
From Amount_table as at
Left join Label_tabl lt on lt.link_to_amount_table = at.link_to_label_table
Where at.tpa = 'GTL'
Group by lt.label, at.tpa
Теперь это возвращает:
GTL, 3000, Label1
Я попытался выбрать из таблицы меток, затем оставил соединение с таблицей сумм, и он все еще не дал желаемых результатов:
GTL, 3000, Label1
Null, Null, Label2
Возможно ли это с суммой и сгруппировать по?Поля, сгруппированные по, должны быть там, иначе вы получите ошибку.Это в DB2, кстати.Есть ли какой-нибудь способ заставить это вернуть мне то, что мне нужно?Я должен получить этикетки;они динамические.