Announcement

Collapse
No announcement yet.

SELECT vs SP Performance

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SELECT vs SP Performance

    Hallo Forum,

    ich habe in letzter Zeit einige Abfragen gebastelt, welche auf "ziemlich" große Tabellen zugreift, was die Spaltenanzahl betrifft.

    Es betrifft genau 2 Tabellen (~210k Zeilen, ~305k Zeilen). Ich versuche mal, die Abfrage zu beschreiben.

    Tabelle A wird mit LEFT JOIN mit sich selbst verbunden, damit aktuelle Datensätze erhalte (Ist eine Art History, z.B. Reservierung erstellt, reservierung abgelehnt / angenommen, etc. für jede Art würde ein eigener Datensatz kommen). Diesen JOIN wird 4 mal hintereinander mit UNION gemacht, leider kann ich diese nicht verbinden.

    Bei 2 von den 4 Abfragen wird die zweite Tabelle über JOIN verwendet.

    Nun habe ich das SQL Statement, welches ich ausführe, dieses braucht ~2s um mir Daten anzuzeigen. Verpacke ich dieses Statement in einer SP, dann krieg ich kein Ergebniss, da der SQL Server Prozess auf 99% hochschnallt und ich nach 5 min noch immer kein Ergebniss habe.

    Daher meine Frage, wo ist hier der Unterschied bzw. auf was muss geachtet werden, damit ich bei der SP genauso auf die ~2s komme?

    Lion

  • #2
    Nachtrag:

    Was eventuell noch interessant wäre, ich hatte zuvor folgende Joins:
    (TableA AS a WITH (NOLOCK) LEFT OUTER JOIN
    TableA AS b WITH (NOLOCK) ON a.Field1= b.Field1AND a.Field2 < b.Field 2)
    Da aber soviele Spalten vorhanden sind, habe ich das auf folgendes abgeändert:

    ((SELECT [benötige Spalten] FROM TableA) AS a
    LEFT OUTER JOIN (SELECT [benötige Spalten] FROM TableA) AS b
    ON a.Field1= b.Field1AND a.Field2< b.Field2)
    Lion

    Comment

    Working...
    X