2017-07-11 13 views
1

Ich arbeite in SQL Server 2008, wo ich nur auf Abfragen zugreifen kann, nicht auf Tabellen oder Sichten. Meine Frage bezieht sich auf die Strukturierung von Code besser.Möglichkeit, Abfrageergebnisse für zukünftige Verwendung ohne Tabelle zu benennen?

Ich habe Ansichten zur Verfügung gestellt, die mir mehrere Datensätze mit zu viel Informationen geben. Ich versuche, die Daten zu reduzieren, um sie einfacher zu verwenden und zu referenzieren.

Mein Ziel ist es, (3) Hauptabfragen zu haben, die alle benötigten Daten auflisten und die Daten für mehrere Berichte referenzieren und wiederverwenden.

Abfrage 1 - Vorfälle: Listen alle Details eines Anrufs Abfrage 2 - Einheiten: listet alle Detail auf Einheiten auf einen Anruf reagiert Abfrage 3 - 1stUnits: listet alle im Detail am 1. nur reagiert Einheiten .

Da jede dieser Abfragen mehrere CASE-Anweisungen enthält, suchte ich nach einer Möglichkeit, die tatsächliche Abfrage zu benennen und die Abfrage in SQL als Qry1Calls oder Qry2Units ohne eine umfangreiche Unterabfrage innerhalb einer Abfrage zu referenzieren.

Ich habe ein wenig gesucht, und nichts gefunden.

Es wäre viel einfacher, Qry1 und Qry3 auszuwählen, wo die IDs übereinstimmen und diese Ergebnisse nach Parametern filtern.

Ist das möglich? Ich übertrage von Access mit etwas SQL zu vollem fledge SQL.

+0

Dies ist nicht klar mir. Können Sie Beispielabfragen zeigen, um besser zu verstehen, was Sie meinen? –

+0

Ich habe die Abfragen nicht praktisch, Entschuldigung dafür. Was ich Ihnen sagen kann, ist, dass ich Seiten mit Case-Anweisungen habe, um Code-Nummern in Beschreibungen, Kategorien, Zeitbereiche in 6-8 verschiedenen Zeitbereichen usw. zu konvertieren. Ich muss nur wissen, ob Sie eine Abfrage wie einen Aliasnamen und Verweisen Sie auf diesen Alias, um ihn einem anderen Alias ​​hinzuzufügen. – Stevnx

+0

Wenn ich mit jeder Abfrage eine Ansicht erstellen könnte, wäre es nicht so schwierig. – Stevnx

Antwort

0

Was Sie suchen ist wahrscheinlich Common Table Expressions (CTE)

Lesen Sie mehr über sie hier:

https://msdn.microsoft.com/en-us/library/ms190766(SQL.90).aspx

Referenz für die with Stichwort und Beispiele hier:

https://docs.microsoft.com/en-us/sql/t-sql/queries/with-common-table-expression-transact-sql

+0

Danke, ich werde es morgen versuchen und sehen, wie es für mich funktioniert. Ich lerne immernoch. Ich werde dann ein Update posten. :) – Stevnx

+0

Sicher, nehmen Sie sich Zeit und viel Glück damit. –

Verwandte Themen