15 Stimmen

Wie kann meine Anwendung von temporären Tabellen profitieren?

Ich habe ein wenig über temporäre Tabellen in MySQL gelesen, aber ich bin ein absoluter Neuling, wenn es um Datenbanken im Allgemeinen und MySQL im Besonderen geht. Ich habe mir einige Beispiele und die MySQL-Dokumentation angesehen, wie man eine temporäre Tabelle erstellt, aber ich versuche herauszufinden, inwiefern temporäre Tabellen für meine Anwendungen von Nutzen sein könnten, und ich schätze, zweitens, auf welche Arten von Problemen ich stoßen kann. Zugegeben, jede Situation ist anders, aber ich denke, was ich suche, ist ein paar allgemeine Ratschläge zu diesem Thema.

Ich habe ein wenig gegoogelt, aber nicht genau das gefunden, was ich zu diesem Thema gesucht habe. Wenn Sie Erfahrungen damit haben, würde ich gerne davon hören.

Danke! Matt

1voto

John Rudy Punkte 36386

Ich habe sie nicht in MySQL durchgeführt, aber ich habe sie in anderen Datenbanken (Oracle, SQL Server usw.) durchgeführt.

Neben anderen Aufgaben bieten temporäre Tabellen eine Möglichkeit, einen abfragbaren (und zurückgebbaren, z. B. von einer Sproc) Datensatz zu erstellen, der zweckgebunden ist. Angenommen, Sie haben mehrere Zahlentabellen - Sie können eine temporäre Tabelle verwenden, um diese Zahlen zu schönen, sauberen Summen (oder anderen mathematischen Werten) zusammenzufassen und dann diese temporäre Tabelle mit anderen in Ihrem Schema für die endgültige Ausgabe zu verbinden. (Ein Beispiel hierfür ist in einem meiner Projekte die Berechnung der Anzahl der geplanten Anrufe, die ein bestimmter Vertriebsmitarbeiter pro Woche, zweiwöchentlich, monatlich usw. tätigen muss).

Ich verwende sie auch oft, um die Daten zu "kippen", indem ich Spalten in Zeilen umwandle usw. Sie sind gut für die fortgeschrittene Datenverarbeitung - aber verwenden Sie sie nur, wenn Sie sie brauchen. (Es gilt wie immer meine goldene Regel: Wenn Sie nicht wissen, warum Sie sie verwenden x und Sie wissen nicht, wie man x funktioniert, dann sollten Sie es wahrscheinlich nicht verwenden).

Im Allgemeinen verwende ich sie am häufigsten in Sprocs, wo eine komplexe Datenverarbeitung erforderlich ist. Ich würde gerne ein konkretes Beispiel nennen, aber meins wäre in T-SQL (im Gegensatz zu MySQLs Standard-SQL), und außerdem ist das alles Kunden-/Produktionscode, den ich nicht weitergeben kann. Ich bin mir sicher, dass jemand anderes hier auf SO einen echten Beispielcode zur Verfügung stellen wird; dies war nur, um Ihnen zu helfen, den Kern des Problems der Domain-Temp-Tables zu verstehen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X