SQL Statment zwei Tabellen
Hallo zusammen,
ich habe zwei Tabellen:
Angebote
KDNR ; Angebotnr ; Datum ;
Aufträge
KDNR ; Auftragnummer; Datum ;
Nun möchte ich einen Abfrage über jede Tabelle, das Ergebnis aber zusammenführen.
Abfrage1:
select kdnr, count(angebotnr) As AngebotAnzahl from angebote
where datum > '01.01.2009'
group by kdnr
als ergebnis bekomme ich:
kdnr ; AngebotAnzahl ;
1 ; 10 ;
2 ; 29 ;
usw.
Das gleiche kann ich mit Tabelle Aufträge machen, dann sieht das Ergebnis so aus:
kdnr ; AuftragAnzahl ;
1 ; 5 ;
2 ; 10 ;
usw.
Nun möchte ich aber eine Kombination aus beiden Ergebnis, welche so aussehen soll:
kdnr ; AngebotAnzahl ; AuftragAnzahl;
1 ; 10 ; 5 ;
2 ; 29 ; 10 ;
usw.
Kann ich dies mit reinem SQL verwirklichen oder benötige ich eine Procedur? (MSSQL2005)
Danke
Gruß
ottscho
ich habe zwei Tabellen:
Angebote
KDNR ; Angebotnr ; Datum ;
Aufträge
KDNR ; Auftragnummer; Datum ;
Nun möchte ich einen Abfrage über jede Tabelle, das Ergebnis aber zusammenführen.
Abfrage1:
select kdnr, count(angebotnr) As AngebotAnzahl from angebote
where datum > '01.01.2009'
group by kdnr
als ergebnis bekomme ich:
kdnr ; AngebotAnzahl ;
1 ; 10 ;
2 ; 29 ;
usw.
Das gleiche kann ich mit Tabelle Aufträge machen, dann sieht das Ergebnis so aus:
kdnr ; AuftragAnzahl ;
1 ; 5 ;
2 ; 10 ;
usw.
Nun möchte ich aber eine Kombination aus beiden Ergebnis, welche so aussehen soll:
kdnr ; AngebotAnzahl ; AuftragAnzahl;
1 ; 10 ; 5 ;
2 ; 29 ; 10 ;
usw.
Kann ich dies mit reinem SQL verwirklichen oder benötige ich eine Procedur? (MSSQL2005)
Danke
Gruß
ottscho
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 120026
Url: https://administrator.de/forum/sql-statment-zwei-tabellen-120026.html
Ausgedruckt am: 26.04.2025 um 10:04 Uhr
10 Kommentare
Neuester Kommentar
Hallo ottscho,
probier mal folgende query (bin ausm Kopf schreiben nicht der beste - also wenns nicht klappt... liegts an mir
)
SELECT KDNR, COUNT(angebotnr) AS AngebotAnzahl, COUNT(auftragnummer) AS AuftragsAnzahl
FROM angebote ag join auftraege a where ag.kdnr = a.kdnr;
dürfte evtl zu dem gewünschten Ergebnis führen... so in der Art....
Greetz
probier mal folgende query (bin ausm Kopf schreiben nicht der beste - also wenns nicht klappt... liegts an mir
SELECT KDNR, COUNT(angebotnr) AS AngebotAnzahl, COUNT(auftragnummer) AS AuftragsAnzahl
FROM angebote ag join auftraege a where ag.kdnr = a.kdnr;
dürfte evtl zu dem gewünschten Ergebnis führen... so in der Art....
Greetz
SELECT name, sum(WTF) as AngebotAnzahl, sum(IsAlice) as Auftraganzahl
FROM (
SELECT name, count(new_angebotnr) As WTF,
0 as IsAlice
FROM new_twangbot
WHERE new_angebotdatum > '01.01.2009'
GROUP BY name
UNION ALL
SELECT name,
0,
Count (new_auftragnr)
FROM new_twauftrag
WHERE auftragdatum > '01.01.2009'
GROUP BY name
)
GROUP BY Name
ORDER BY name;
Moin Ottscho,
probier mal:
Gruß, Mad Max
probier mal:
select an.KDNR, an.AngebotAnzahl, au.AuftragAnzahl
from (
select KDNR, count (*) As AngebotAnzahl
from Angebote
where Datum > '01.01.2009'
group by KDNR) an
join (
select KDNR, count (*) As AuftragAnzahl
from Aufträge
where Datum > '01.01.2009'
group by KDNR) au on an.KDNR = au.KDNR
Gruß, Mad Max