Hi, ich habe folgenden Select: Select s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME,s.MENGE From Tabelle1 s, Tabelle2 a, Tabelle3 p,Tabelle4 b Where s.ZEINEINHEIT >= 2007001 And s.ZEINEINHEIT <= 2007012 And s.LAND = a.LAND And s.ARTIKELNR = a.ARTIKELNNR And p.LAND = s.LAND And p.BELPOSID = s.BELPOSID And b.LAND = s.LAND And b.ID = p.ID And a.ARTIKELKENNZEICHEN Is Not Null And b.KUNDENNUMMER in ( '770510' ) Order By 1, 2,3 Ergebnismenge: 420 Zeilen, angezeigt Zeit: 0 Sekunden ----------------------------------------------------------------------------------- Mache ich aus s.MENGE --> SUM(s.MENGE) und füge "Group By s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME" ein, sieht das so aus und dauert über 8 Minuten Select s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME, SUM(s.MENGE) From Tabelle1 s, Tabelle2 a, Tabelle3 p,Tabelle4 b Where s.ZEINEINHEIT >= 2007001 And s.ZEINEINHEIT <= 2007012 And s.LAND = a.LAND And s.ARTIKELNR = a.ARTIKELNNR And p.LAND = s.LAND And p.BELPOSID = s.BELPOSID And b.LAND = s.LAND And b.ID = p.ID And a.ARTIKELKENNZEICHEN Is Not Null And b.KUNDENNUMMER in ( '770510' ) Group By s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME Order By 1, 2,3 Warum dauert das so lange ? --------------------------------------------------------------------------------- Jetzt nehme ich: "And a.ARTIKELKENNZEICHEN Is Not Null" raus. Dann dauert es nur noch eine Sekunde und sieht so aus: Select s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME, SUM(s.MENGE) From Tabelle1 s, Tabelle2 a, Tabelle3 p,Tabelle4 b Where s.ZEINEINHEIT >= 2007001 And s.ZEINEINHEIT <= 2007012 And s.LAND = a.LAND And s.ARTIKELNR = a.ARTIKELNNR And p.LAND = s.LAND And p.BELPOSID = s.BELPOSID And b.LAND = s.LAND And b.ID = p.ID And b.KUNDENNUMMER in ( '770510' ) Group By s.ZEINEINHEIT, b.ORT,s.ARTIKELNR, a.ARTIKELNAME Order By 1, 2,3 Warum braucht der Sql Server dafür so lange ?
|