Announcement

Collapse
No announcement yet.

Tabelle erstellen aus Abfrage

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

  • Tabelle erstellen aus Abfrage

    Hi,

    bin ein Newbie, deshalb nicht lachen.

    Ich habe zwei ziemlich komplexe Views, die ich in einer View zusammenführen muss. Diese Abfrage soll in Zukunft jedem meiner Mitarbeiter zur Verfügung stehen. Diese Abfragen erzeugen allerdings eine solche Last, dass ich damit alles lahlegen würde. Meine Idee ist nun, aus diesen Abfragen einfach zwei Tabellen zu machen (beispielsweise nachts) und meine Mitarbeiter Ihre Daten aus diesem Datenbestand ziehgen zu lassen. Ich erhoffe mir daraus einen Performance-Gewinn.

    1. Haltet Ihr das für sinnvoll?
    2. Mit SELECT INTO kann ich das aus einer View heraus nicht machen. Ich benutze das MS SQL SMSE. Wie geht das sonst?

    Vielen Dank für Eure Hilfe,

    Rollo

  • #2
    Diese Abfragen erzeugen allerdings eine solche Last
    Nichts ist gut genug, als das man es nicht noch optimieren könnte; damit würde ich mal anfangen. Sie Dir mal den Ausführungsplan an, was am meisten bremst.

    aus diesen Abfragen einfach zwei Tabellen zu machen (beispielsweise nachts)
    Das ist durchaus sinnvoll, ist ja auch die Idee des "Dataware House", das man bestimmte Daten separat fürs Reporting bereitstellt.
    Performance gewinnst Du nur, wenn das dann richtig läuft, also sinnige Indizes anlegen & SQL optimal gestalten.

    SELECT INTO kann ich das aus einer View heraus nicht machen
    Stimmt, ist auch nicht Sinn eines View, das soll nur etwas anzeigen.
    So etwas erledigt man mit einer STORED PROCEDURE.

    Du hast (mindestens) 2 Möglichkeiten
    - Eine STORED PROCEDURE anlegen und vom SQL Server Agent zeitgesteuert ausführen lassen
    - Einen "Integration Servive" Task anlegen, der das auch sehr gut erledigen kann und dito zeitgesteuert ausführen; ist praktisch, wenn Du so etwas "zusammenklicken" willst statt in T-SQL zu programmieren.
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment

    Working...
    X