Summe der gelieferten Unternehmen für jeden Kunden (ID)

Ich bin wieder in Aktion;) Dieses Mal habe ich eine ziemlich schwere Aufgabe (glaube ich).

Hier ist was ich habe:

|customerID ||company |compdel |Street |Code |Date 1 |Date 2 | +-------------------------------+--------------------------------------+ |1 ||Example1 |DELExam1|ABC Rd.1|4025 |01.01.2015 |01.08.2015 | |1 ||Example1 |DELExam1|ABC Rd.1|4025 |13.04.2015 |01.12.2015 | |1 ||Example1 |DELExam2|DEL St.1|0212 |13.03.2015 |09.07.2015 | |1 ||Example1 |DELExam3|REF Wy.1|9875 |26.05.2015 |16.09.2015 | |2 ||Example2 |DELExam4|REG St.1|6754 |21.02.2015 |16.05.2015 | |2 ||Example2 |DELExam5|HIO Wy.1|9999 |01.03.2015 |06.08.2015 | |2 ||Example2 |DELExam5|HIO Wy.1|9999 |01.01.2015 |06.02.2015 | 

Ich möchte für jede Kondition zeigen jede gelieferte Firma (compdel) summiert in einer Zeile mit dem frühesten date in date 1 und das neueste date in date 2. Um es leichter zu verstehen, möchte ich dieses Ergebnis:

 |customerID ||company |compdel |Street |Code |Date 1 |Date 2 | +-------------------------------+--------------------------------------+ |1 ||Example1 |DELExam1|ABC Rd.1|4025 |01.01.2015 |01.12.2015 | |1 ||Example1 |DELExam2|DEL St.1|0212 |13.03.2015 |09.07.2015 | |1 ||Example1 |DELExam3|REF Wy.1|9875 |26.05.2015 |16.09.2015 | |2 ||Example2 |DELExam4|REG St.1|6754 |21.02.2015 |16.05.2015 | |2 ||Example2 |DELExam5|HIO Wy.1|9999 |01.01.2015 |06.08.2015 | 

Ich habe es schon mit dieser select-Statement ausprobiert, aber es funktioniert nicht: Ich weiß, dass das nur ein Teil der Antwort sein kann ….

 SELECT * FROM (SELECT customerID, company, compdel, Street, Code, Date 1, Date 2, ROW_NUMBER() OVER(PARTITION BY compdel ORDER BY customerID) rn FROM table 1) as Y WHERE rn = 1 

Verwenden Sie GROUP BY mit verschiedenen Werten (customerId, company etc.) und MIN und MAX für Termine

 SELECT CustomerId , Company , CompDel , Street , Code , MIN(Date1) As EarliestDate1 , MAX(Date2) AS NewestDate2 FROM YourTable GROUP BY CustomerId, Company, CompDel, Street, Code