Potrzebuję połączyć wiele tabel, wybrać liczby z różnych tabel i grupować według jednej kolumny w jednym zapytaniu. To w jaki sposób mogę to zrobić oddzielnie:Dołącz do wielu tabel, wybierz liczby z różnych tabel i grupuj według jednej kolumny w jednym zapytaniu
select c.CommunityName, SUM(case when m.ListKey = c.ListKey then 1 else 0 end) as Posts
from Community c with(NOLOCK)
join messages_ m with(NOLOCK)
on c.ListKey = m.ListKey
group by c.CommunityName
select c.CommunityName, SUM(case when b.CommunityKey = c.CommunityKey then 1 else 0 end) as Blogs
from Community c with(NOLOCK)
join Blog b with(NOLOCK)
on c.CommunityKey = b.CommunityKey
group by c.CommunityName
select c.CommunityName, SUM(case when ce.CommunityKey = c.CommunityKey then 1 else 0 end) as Events
from Community c with(NOLOCK)
join CalendarEvent ce with(NOLOCK)
on c.CommunityKey = ce.CommunityKey
where ce.StartDateTime >= GETDATE()
group by c.CommunityName
lub po prostu
select c.CommunityName, COUNT(*)
from Community c with(NOLOCK)
join messages_ m with(NOLOCK)
on c.ListKey = m.ListKey
group by c.CommunityName
select c.CommunityName, COUNT(*)
from Community c with(NOLOCK)
join Blog b with(NOLOCK)
on c.CommunityKey = b.CommunityKey
group by c.CommunityName
select c.CommunityName, COUNT(*)
from Community c with(NOLOCK)
join CalendarEvent ce with(NOLOCK)
on c.CommunityKey = ce.CommunityKey
where ce.StartDateTime >= GETDATE()
group by c.CommunityName
istnieje więcej, niektóre tabele, które wymagają dodatkowego łączy ... Czy ktoś może pomóc?
Nie można UNION je wszystkie razem, dodając statyczne pole tekstowe, aby odróżnić każdą grupę? – Joe
Wciąż jestem dzieckiem kreatora SQL;) Sprawdzę UNION. Dzięki! – HLkatie
Jaki powinien być twój wynik? suma wszystkich liczb z różnych zapytań? – Lobo