Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

In diesem Tutorial besprechen wir temporäre SQL-Tabellen und -Ansichten . Diese beiden können nützlich sein, wenn Sie zum Testen und Debuggen einen bestimmten Datensatz aus einer physischen Tabelle abrufen möchten . Wir werden auch über die beiden Arten temporärer Tabellen und ihre Unterschiede sprechen.

Mit temporären SQL-Tabellen und -Ansichten können Sie den Datensatz mit mehreren Befehlen frei bearbeiten, ohne ihn wiederholt abzufragen, da er bereits in einer separaten Tabelle gespeichert ist.

Auch wenn diese beiden ähnlich funktionieren, müssen Sie ihre Unterschiede beachten. Das hilft Ihnen bei der Entscheidung, welche Methode Sie in einer bestimmten Situation am besten anwenden können.

Basierend auf dem Namen selbst werden temporäre Tabellen zum vorübergehenden Speichern von Daten in einer Sitzung verwendet.

Wir können auch mehrere Operationen an ihnen durchführen, genau wie an einem physischen Tisch . Stellen Sie sich vor, Sie haben einen SQL-Befehl, der sehr lang ist. Sie können dies einfach in eine temporäre Tabelle einfügen und mit dem Debuggen oder Beheben der Fehler beginnen, ohne die ursprüngliche Abfrage zu beeinträchtigen. Darüber hinaus sind temporäre Tabellen leistungsstark und werden häufig in SQL verwendet.

Inhaltsverzeichnis

Zwei Arten temporärer Tabellen in SQL

Es gibt zwei Arten von temporären Tabellen in SQL. Dies sind die lokalen und globalen temporären Tabellen.

Lokale temporäre Tabellen existieren nur in einer Sitzung, in der sie erstellt wurden. In anderen Sitzungen können wir nicht auf diese Tabelle zugreifen. Aus diesem Grund sind lokale temporäre Tabellen nicht mehr vorhanden, sobald die Sitzung, in der sie erstellt wurden, geschlossen wird.

Im Gegensatz dazu sind globale temporäre Tabellen bei der Erstellung in allen Sitzungen zugänglich. Sobald jedoch alle Sitzungen geschlossen sind, existiert es nicht mehr und ist nicht mehr zugänglich.

Beachten Sie, dass Sie einfach erkennen können, welche Art von temporärer Tabelle in einer Abfrage verwendet wird, indem Sie das Symbol „ # “ für lokal und „ ## “ für die globale temporäre Tabelle überprüfen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Lokale temporäre Tabellen beginnen normalerweise mit „ # “ im Tabellennamen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Andererseits beginnen globale temporäre Tabellen mit „ ## “ vor dem Tabellennamen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Wenn Sie außerdem schnell eine beliebige Tabelle erstellen möchten, können Sie dem folgenden Befehl folgen: SELECT * INTO #customers FROM dbo.courses als Beispiel.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Dieser Befehl erstellt eine neue temporäre Tabelle mit dem Namen #customers mit allen Daten aus der Tabelle dbo.courses .

Ansichten in Microsoft SQL Server Management Studio

Lassen Sie uns nun SQL-Ansichten mit diesem Beispielbefehl besprechen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Nehmen wir zum Beispiel an, wir möchten einen solchen Befehl nicht wiederholt ausführen. Sie können es einfach in eine Ansicht einfügen, indem Sie dem folgenden Befehl folgen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Das Erstellen einer Ansicht ähnelt dem Erstellen von Tabellen. Dadurch können wir die von uns eingegebene Abfrage ausführen, indem wir den von uns erstellten Ansichtsnamen auswählen. In diesem Fall ist es CustomersbyYear_v .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Es ist wichtig zu beachten, dass sich Ansichten von temporären Tabellen unterscheiden. Das liegt daran, dass Ansichten in Ihrer Datenbank genauso sichtbar sind wie eine physische Tabelle, sofern Sie sie nicht löschen. Darüber hinaus speichern Ansichten keine Daten oder Werte.

Stattdessen wird lediglich der Befehl gerendert, den Sie direkt nach dem Befehl CREATE VIEW eingegeben haben . Sie können jede Tabellenoperation auch in Ansichten ausführen.

Am wichtigsten ist, dass wir Ansichten, wie sie normalerweise dargestellt werden, leicht identifizieren können, indem wir „v“ am Anfang oder Ende des Ansichtsnamens einfügen.

Temporäre Tabellen und Ansichten in SQL erstellen

Für dieses Beispiel habe ich diese Abfrage, die nach der Ausführung die Datensätze aus Sales.SalesOrderHeader und Sales.Customer C kombiniert und anzeigt .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Erstellen lokaler temporärer Tabellen in SQL

Stellen Sie sich vor, Sie haben eine 200 Zeilen lange Abfrage geschrieben und müssen sie debuggen und bestimmte Vorgänge ausführen. Sie können die Abfrage nicht direkt bearbeiten , da dies während des Prozesses zu weiteren Fehlern führen könnte.

In diesem Fall erstellen wir anhand des vorherigen Beispiels eine lokale temporäre Tabelle, indem wir den Befehl „ INTO #test_local “ vor dem FROM-Befehl hinzufügen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Sobald wir diesen Befehl ausführen, enthält #test_local nun die kombinierten Datensätze von Sales.SalesOrderHeader und Sales.Customer C . Dies ist das Ergebnis, das Sie sehen, wenn Sie die Tabelle #test_local auswählen .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Danach können wir nun beliebige Operationen an der Tabelle #test_local ausführen . Wir wählen alle Datensätze aus #test_local aus und ändern dann die Reihenfolge der Datensätze nach Kunden-ID mit dem folgenden Befehl. 

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Dadurch werden die Datensätze nun nach ihrer Kunden-ID sortiert. Da wir jedoch eine lokale temporäre Tabelle verwendet haben, können wir in einer anderen Sitzung nicht auf die #test_local- Tabelle zugreifen oder diese verwenden. Das nächste Beispiel zeigt, was passieren wird, wenn wir versuchen, auf #test_local in SQLQuery2.sql zuzugreifen .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Basierend auf dem vorherigen Beispiel wurde bei der Auswahl von #test_local lediglich eine Fehlermeldung angezeigt. Dies liegt daran, dass die Tabelle #test_local nur in der Sitzung vorhanden ist, in der sie erstellt wurde, nämlich SQLQuery1.sql .

Erstellen globaler temporärer Tabellen in SQL

Als Nächstes verwenden wir dieselbe Abfrage wie in #test_local . Aber dieses Mal verwenden wir eine globale .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Wenn wir nun ##test_global auswählen und die Datensätze nach Kunden-ID sortieren, wird dieselbe Ausgabe angezeigt wie in #test_local, da wir dieselbe Abfrage verwendet haben. 

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Danach versuchen wir, in einer anderen Sitzung auf die Tabelle ##test_global zuzugreifen , indem wir sie auswählen. Dies funktioniert reibungslos, da wir eine globale temporäre Tabelle verwenden.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

An dieser Stelle beleuchten wir den Unterschied zwischen lokalen und globalen temporären Tabellen.

Denken Sie daran, dass auf lokale temporäre Tabellen nur in der Sitzung zugegriffen werden kann, in der sie erstellt wurden . Sobald Sie diese Sitzung schließen, ist sie nicht mehr vorhanden.

Andererseits sind globale temporäre Tabellen für alle Sitzungen sichtbar , es sei denn, Sie schließen alle aktiven Sitzungen oder die Anwendung selbst.

Ansichten in SQL erstellen

Wir werden jetzt eine Ansicht erstellen. In diesem Beispiel haben wir eine vorhandene Abfrage wie diese.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Wir können mit der Erstellung einer Ansicht beginnen, indem wir der Abfrage den Befehl CREATE VIEW hinzufügen.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Beim Ausführen des Befehls wird eine Ansicht in der Datenbank erstellt, an der wir arbeiten. In diesem Fall ist es AdventureWorks2012 .

Nach der Aktualisierung sollte auch dbo.CustomerView_v im Ordner „Views“ angezeigt werden. Um den Ordner „Ansichten“ zu aktualisieren, klicken Sie mit der rechten Maustaste darauf und wählen Sie dann „Aktualisieren“ aus .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Klicken Sie auf das +-Symbol rechts neben dem Ordner „Ansichten“ und dbo.CustomerView_v wird angezeigt.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Sie können diese Ansicht öffnen, indem Sie mit der rechten Maustaste auf dbo.CustomerView_v klicken und dann „Top 1000 Zeilen auswählen“ aus den Optionen auswählen. Dadurch werden 1000 Datensätze in dieser Ansicht angezeigt .

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Danach können wir nun dbo.CustomerView_v verwenden und beliebige Operationen darauf ausführen, genau wie bei einer Tabelle. Beispielsweise möchten wir in dbo.CustomerView_v die Datensätze mit einer SalesOrderID größer als 50.000 auswählen . In diesem Fall verwenden wir den folgenden Befehl.

Temporäre SQL-Tabellen und -Ansichten für LuckyTemplates-Benutzer

Jetzt können wir einen Vorgang für die von uns erstellte Ansicht ausführen.

Abschluss

Zusammenfassend haben wir die beiden Arten temporärer Tabellen sowie ihre Unterschiede kennengelernt und erfahren, warum wir sie verwenden müssen. Darüber hinaus haben wir besprochen, dass temporäre Tabellen dazu dienen, Fehler in Ihren Abfragen zu beheben, ohne die eigentliche Abfrage zu beschädigen.

Beachten Sie, dass temporäre Tabellen nur für Sitzungen sichtbar sind, in denen sie erstellt wurden. Daher ist es nicht mehr vorhanden, sobald wir die aktiven Sitzungen oder die Anwendung selbst geschlossen haben.

Wir haben auch erfahren, dass Ansichten keine Daten oder Datensätze speichern. Es werden nur Ergebnisse angezeigt, die auf der Abfrage basieren, die gerendert werden soll. Diese Ansichten werden in unserer Datenbank gespeichert, sobald wir sie erstellt haben. 

Durch das Erlernen dieser beiden sind Sie nun in der Lage, lange Befehle schnell auszuführen und große Teile des Datensatzes problemlos zu ändern.

Alles Gute,

Hafiz


So speichern und laden Sie eine RDS-Datei in R

So speichern und laden Sie eine RDS-Datei in R

Sie erfahren, wie Sie Objekte aus einer .rds-Datei in R speichern und laden. In diesem Blog wird auch behandelt, wie Sie Objekte aus R in LuckyTemplates importieren.

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

Was ist Self in Python: Beispiele aus der Praxis

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

First N Business Days Revisited – Eine DAX-Codierungssprachenlösung

In diesem Tutorial zur DAX-Codierungssprache erfahren Sie, wie Sie die GENERATE-Funktion verwenden und einen Kennzahltitel dynamisch ändern.

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

Präsentieren Sie Einblicke mithilfe der Multi-Threaded-Dynamic-Visuals-Technik in LuckyTemplates

In diesem Tutorial erfahren Sie, wie Sie mithilfe der Multi-Threaded-Dynamic-Visuals-Technik Erkenntnisse aus dynamischen Datenvisualisierungen in Ihren Berichten gewinnen.

Einführung in den Filterkontext in LuckyTemplates

Einführung in den Filterkontext in LuckyTemplates

In diesem Artikel werde ich den Filterkontext durchgehen. Der Filterkontext ist eines der Hauptthemen, über die sich jeder LuckyTemplates-Benutzer zunächst informieren sollte.

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Beste Tipps zur Verwendung der Apps im LuckyTemplates-Onlinedienst

Ich möchte zeigen, wie der LuckyTemplates Apps-Onlinedienst bei der Verwaltung verschiedener Berichte und Erkenntnisse aus verschiedenen Quellen helfen kann.

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Analysieren Sie Gewinnmargenänderungen im Laufe der Zeit – Analysen mit LuckyTemplates und DAX

Erfahren Sie, wie Sie Ihre Gewinnmargenänderungen mithilfe von Techniken wie Kennzahlenverzweigung und der Kombination von DAX-Formeln in LuckyTemplates ermitteln.

Materialisierungsideen für Datencaches in DAX Studio

Materialisierungsideen für Datencaches in DAX Studio

In diesem Tutorial werden die Ideen der Materialisierung von Datencaches und deren Auswirkungen auf die Leistung von DAXs bei der Bereitstellung von Ergebnissen erläutert.

Geschäftsberichte mit LuckyTemplates

Geschäftsberichte mit LuckyTemplates

Wenn Sie bisher noch Excel verwenden, ist dies der beste Zeitpunkt, LuckyTemplates für Ihre Geschäftsberichtsanforderungen zu verwenden.

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst

Was ist LuckyTemplates Gateway? Alles was du wissen musst