Friday 10 November 2017

Moving Average Oracle Sql


SQL-Funktionen SQL-Funktionen sind in die Oracle-Datenbank integriert und stehen für verschiedene SQL-Anweisungen zur Verfügung. Verwechseln Sie nicht SQL-Funktionen mit benutzerdefinierten Funktionen, die in PLSQL geschrieben sind. Wenn Sie eine SQL-Funktion mit einem Argument eines anderen Datentyps als dem von der SQL-Funktion erwarteten Datentyp aufrufen, versucht Oracle, das Argument vor der Ausführung der SQL-Funktion in den erwarteten Datentyp zu konvertieren. Wenn Sie eine SQL-Funktion mit einem Null-Argument aufrufen, gibt die SQL-Funktion automatisch Null zurück. Die einzigen SQL-Funktionen, die nicht unbedingt diesem Verhalten folgen, sind CONCAT. NVL. ERSETZEN. Und REGEXPREPLACE. Die kombinierten Werte der NLSCOMP - und NLSSORT-Einstellungen bestimmen die Regeln, nach denen Zeichen sortiert und verglichen werden. Wenn NLSCOMP auf LINGUISTIC für Ihre Datenbank gesetzt ist, werden alle Entitäten in diesem Kapitel entsprechend den vom NLSSORT-Parameter angegebenen Regeln interpretiert. Wenn NLSCOMP nicht auf LINGUISTIC gesetzt ist. Dann werden die Funktionen ohne Rücksicht auf die NLSSORT-Einstellung interpretiert. NLSSORT kann explizit gesetzt werden. Wenn es nicht explizit gesetzt ist, wird es von NLSLANGUAGE abgeleitet. Weitere Informationen zu diesen Einstellungen finden Sie im Oracle Database Globalization Support Guide. In den Syntaxdiagrammen für SQL-Funktionen werden Argumente durch ihre Datentypen angezeigt. Wenn die Parameterfunktion in der SQL-Syntax erscheint, ersetzen Sie sie durch eine der in diesem Abschnitt beschriebenen Funktionen. Funktionen werden nach den Datentypen ihrer Argumente und deren Rückgabewerte gruppiert. Wenn Sie SQL-Funktionen auf LOB-Spalten anwenden, erstellt Oracle Database temporäre LOBs während der SQL - und PLSQL-Verarbeitung. Sie sollten sicherstellen, dass das temporäre Tablespace-Kontingent ausreichend ist, um diese temporären LOBs für Ihre Anwendung zu speichern. Benutzerdefinierte Funktionen für Informationen zu Benutzerfunktionen und Datenkonvertierung für die implizite Konvertierung von Datentypen Oracle Textreferenz für Informationen zu Funktionen, die mit Oracle Text verwendet werden Oracle Data Mining Anwendungsentwicklerhandbuch für Informationen zu häufigen Itemsetfunktionen, die mit Oracle Data Mining verwendet werden Die Syntax, die die Kategorien enthält Der Funktionen folgt: In den folgenden Abschnitten werden die integrierten SQL-Funktionen in jeder der in den vorangegangenen Diagrammen dargestellten Gruppen mit Ausnahme benutzerdefinierter Funktionen aufgelistet. Sämtliche eingebauten SQL-Funktionen werden dann in alphabetischer Reihenfolge beschrieben. Einzeilige Funktionen Einzeilige Funktionen geben eine einzelne Ergebniszeile für jede Zeile einer abgefragten Tabelle oder Sicht zurück. Diese Funktionen können in Auswahllisten, WHERE-Klauseln, START WITH - und CONNECT BY-Klauseln und HAVING-Klauseln erscheinen. Numerische Funktionen Numerische Funktionen erlauben numerische Eingabe und geben numerische Werte zurück. Die meisten numerischen Funktionen, die NUMBER-Werte zurückgeben, die auf 38 Dezimalstellen genau sind. Die transzendentalen Funktionen COS. EXP. LN. LOG. SÜNDE. SinH SQRT. BRÄUNEN. Und TANH sind genau auf 36 Dezimalstellen genau. Die transzendentalen Funktionen ACOS. WIE IN. EINE LOHE. Und ATAN2 sind bis zu 30 Dezimalstellen genau. Die numerischen Funktionen sind: Zeichenfunktionen Rückgabe von Zeichenwerten Zeichenfunktionen, die Zeichenwerte zurückgeben, geben Werte der folgenden Datentypen zurück, wenn nicht anders dokumentiert: Wenn das Eingabeargument CHAR oder VARCHAR2 ist. Dann ist der zurückgegebene Wert VARCHAR2. Wenn das Eingabeargument NCHAR oder NVARCHAR2 ist. Dann ist der zurückgegebene Wert NVARCHAR2. Die Länge des von der Funktion zurückgegebenen Wertes wird durch die maximale Länge des zurückgegebenen Datentyps begrenzt. Für Funktionen, die CHAR oder VARCHAR2 zurückgeben. Wenn die Länge des Rückgabewertes den Grenzwert überschreitet, schneidet Oracle Database es ab und gibt das Ergebnis ohne Fehlermeldung zurück. Für Funktionen, die CLOB-Werte zurückgeben, wenn die Länge der Rückgabewerte den Grenzwert überschreitet, wirft Oracle einen Fehler auf und gibt keine Daten zurück. Die Zeichenfunktionen, die Zeichenwerte zurückgeben, sind: NLS-Zeichenfunktionen Die NLS-Zeichenfunktionen geben Informationen über den Zeichensatz zurück. Die NLS-Zeichenfunktionen sind: Zeichenfunktionen Rückgabe von Zahlenwerten Zeichenfunktionen, die Zahlenwerte zurückgeben, können als Argument einen beliebigen Zeichendatentyp verwenden. Die Zeichenfunktionen, die Zahlenwerte zurückgeben, sind: Datetime-Funktionen Datetime-Funktionen arbeiten mit Datum (DATE), Zeitstempel (TIMESTAMP. TIMESTAMP MIT ZEITZONE und TIMESTAMP MIT LOCAL TIME ZONE) und Intervall (INTERVAL DAY TO SEKOND INTERVAL YEAR TO MONTH) Werte. Einige Datetime-Funktionen wurden für den Datentyp Oracle DATE (ADDMONTHS, CURRENTDATE, LASTDAY, NEWTIME und NEXTDAY) entwickelt. Wenn Sie als Argument einen Zeitstempelwert angeben, konvertiert Oracle Database den Eingabetyp intern in einen DATE-Wert und gibt einen DATE-Wert zurück. Die Ausnahmen sind die MONTHSBETWEEN-Funktion, die eine Zahl zurückgibt, und die ROUND - und TRUNC-Funktionen, die keine Zeitstempel - oder Intervallwerte akzeptieren. Die verbleibenden Datetime-Funktionen wurden entworfen, um einen der drei Datentypen (Datum, Zeitstempel und Intervall) zu akzeptieren und einen Wert von einem dieser Typen zurückzugeben. Die Datetime-Funktionen sind: Allgemeine Vergleichsfunktionen Die allgemeinen Vergleichsfunktionen bestimmen den größten und / oder niedrigsten Wert aus einem Satz von Werten. Die allgemeinen Vergleichsfunktionen sind: Konvertierungsfunktionen Konvertierungsfunktionen konvertieren einen Wert von einem Datentyp in einen anderen. Im Allgemeinen folgt die Form der Funktionsnamen dem Konvention Datentyp TO Datentyp. Der erste Datentyp ist der Eingabedatentyp. Der zweite Datentyp ist der Ausgabedatentyp. Die SQL-Konvertierungsfunktionen sind: Große Objektfunktionen Die großen Objektfunktionen arbeiten auf LOBs. Die großen Objektfunktionen sind: Erfassungsfunktionen Die Erfassungsfunktionen funktionieren auf verschachtelten Tabellen und Variablen. Die SQL-Auflistungsfunktionen sind: Hierarchische Funktion Die hierarchische Funktion wendet hierarchische Pfadinformationen auf eine Ergebnismenge an. Data Mining-Funktionen Die Data-Mining-Funktionen basieren auf Modellen, die mit dem DBMSDATAMINING-Paket oder der Oracle Data Mining-Java-API erstellt wurden. Die SQL-Data-Mining-Funktionen sind: XML-Funktionen Die XML-Funktionen funktionieren oder liefern XML-Dokumente oder Fragmente zurück. Weitere Informationen zum Auswählen und Abfragen von XML-Daten mit diesen Funktionen, einschließlich Informationen zur Formatierungsausgabe, finden Sie im Oracle XML DB Developers Guide. Die SQL-XML-Funktionen sind: Codierung und Decodierung Funktionen Die Codierung und Decodierung Funktionen können Sie inspizieren und decodieren Daten in der Datenbank. NULL-verwandte Funktionen Die NULL-bezogenen Funktionen ermöglichen eine Nullhandhabung. Die NULL-bezogenen Funktionen sind: Umgebungs - und Identifikatorfunktionen Die Umgebungs - und Identifikationsfunktionen enthalten Informationen über die Instanz und Sitzung. Diese Funktionen sind: Aggregatfunktionen Aggregatfunktionen liefern eine einzelne Ergebniszeile basierend auf Gruppen von Zeilen und nicht auf einzelnen Zeilen. Aggregatfunktionen können in Auswahllisten und in ORDER BY - und HAVING-Klauseln erscheinen. Sie werden häufig mit der GROUP BY-Klausel in einer SELECT-Anweisung verwendet, wobei Oracle Database die Zeilen einer abgefragten Tabelle oder Sicht in Gruppen unterteilt. In einer Abfrage, die eine GROUP BY-Klausel enthält, können die Elemente der Auswahlliste Aggregatfunktionen, GROUP BY-Ausdrücke, Konstanten oder Ausdrücke mit einer dieser sein. Oracle wendet die Aggregatfunktionen auf jede Gruppe von Zeilen an und gibt eine einzelne Ergebniszeile für jede Gruppe zurück. Wenn Sie die GROUP BY-Klausel weglassen, wendet Oracle Aggregatfunktionen in der Auswahlliste auf alle Zeilen in der abgefragten Tabelle oder Sicht an. Sie verwenden Aggregatfunktionen in der HAVING-Klausel, um Gruppen aus der Ausgabe zu eliminieren, basierend auf den Ergebnissen der Aggregatfunktionen und nicht auf den Werten der einzelnen Zeilen der abgefragten Tabelle oder View. Verwenden der GROUP BY-Klausel: Beispiele und die HAVING-Klausel für weitere Informationen über die GROUP BY-Klausel und HAVING-Klauseln in Abfragen und Unterabfragen Viele (aber nicht alle) Aggregatfunktionen, die ein einziges Argument akzeptieren, akzeptieren diese Klauseln: DISTINCT bewirkt eine Aggregatfunktion Nur bestimmte Werte des Argumentausdrucks. ALLE bewirkt, dass eine Aggregatfunktion alle Werte berücksichtigt, einschließlich aller Duplikate. Zum Beispiel ist der DISTINCT-Durchschnitt von 1, 1, 1 und 3 2. Der ALL-Durchschnitt ist 1,5. Wenn Sie keinen Wert angeben, ist der Standardwert ALL. Alle Aggregatfunktionen außer COUNT () und GROUPING ignorieren Nullwerte. Sie können die NVL-Funktion im Argument einer Aggregatfunktion verwenden, um einen Wert für einen Nullwert zu ersetzen. COUNT gibt niemals null zurück, sondern gibt entweder eine Zahl oder Null zurück. Für alle übrigen Aggregatfunktionen, wenn der Datensatz keine Zeilen enthält oder nur Zeilen mit Nullen als Argumente für die Aggregatfunktion enthält, gibt die Funktion null zurück. Die Aggregatfunktionen MIN. MAX. SUMME. AVG. GRAF. VARIANZ. Und STDDEV. Wenn es von dem Schlüsselwort KEEP gefolgt wird, kann in Verbindung mit der FIRST - oder der LAST-Funktion verwendet werden, um auf einem Satz von Werten aus einem Satz von Zeilen zu arbeiten, die als FIRST oder LAST in Bezug auf eine gegebene Sortierspezifikation stehen. Weitere Informationen finden Sie unter FIRST. Sie können Aggregatfunktionen verschachteln. Das folgende Beispiel berechnet den Durchschnitt der maximalen Gehälter aller Abteilungen im Beispielschema hr: Diese Berechnung wertet die innere Aggregate (MAX (Gehalt)) für jede Gruppe aus, die durch die GROUP BY-Klausel (departmentid) und Aggregate definiert wird Die Ergebnisse wieder. Die Aggregatfunktionen sind: Analytische Funktionen Analytische Funktionen berechnen einen Aggregatwert basierend auf einer Gruppe von Zeilen. Sie unterscheiden sich von Aggregatfunktionen darin, dass sie mehrere Zeilen für jede Gruppe zurückgeben. Die Gruppe von Zeilen heißt Fenster und wird durch die analytische Klausel definiert. Für jede Zeile wird ein Schiebefenster von Zeilen definiert. Das Fenster bestimmt den Bereich der Zeilen, die für die Berechnung der aktuellen Zeile verwendet werden. Fenstergrößen können entweder auf eine physikalische Anzahl von Zeilen oder ein logisches Intervall wie z. B. Zeit basieren. Analytische Funktionen sind die letzten Operationen, die in einer Abfrage ausgeführt werden, mit Ausnahme der endgültigen ORDER BY-Klausel. Alle Joins und alle WHERE. GRUPPIERE NACH. Und HAVING-Klauseln abgeschlossen sind, bevor die analytischen Funktionen verarbeitet werden. Daher können analytische Funktionen nur in der Auswahlliste oder ORDER BY-Klausel erscheinen. Analytische Funktionen werden häufig verwendet, um kumulative, sich bewegende, zentrierte und Berichtsaggregate zu berechnen.14 0 86.4 1.0 129 0 3 0.0 262 0 15.2 1.0 1 0 290 12.1 Im Allgemeinen ist die Information, die in dem oben gezeigten Beispiel AWR IO-Abschnitt dargestellt ist, vorgesehen Helfen dem DBA, Hotspots des Datenbank-IO-Subsystems zu identifizieren. Oracle betrachtet durchschnittliche Plattenlesezeiten von mehr als 20 Millisekunden als nicht akzeptabel. Wenn Datendateien, wie im obigen Beispiel, konsistente durchschnittliche Lesezeiten von 20 ms oder mehr aufweisen, können eine Reihe möglicher Ansätze verfolgt werden: SQL-Verwaltung: Eine Datenbank, in der kein Benutzer SQL ausgeführt wird, erzeugt wenig oder keine IO. Letztendlich ist das gesamte IO, das von einer Datenbank generiert wird, direkt oder indirekt auf die Art und Menge des Benutzers, der zur Ausführung gesendet wird, zurückzuführen. Dies bedeutet, dass es möglich ist, die IO-Anforderungen einer Datenbank zu begrenzen, indem die Menge der IO, die durch einzelne SQL-Anweisungen generiert wird, gesteuert wird. Dies geschieht durch Abstimmen von SQL-Anweisungen, so dass ihre Ausführungspläne eine minimale Anzahl von IO-Operationen ergeben. Typischerweise wird es in einer problematischen Situation nur wenige SQL-Anweisungen mit suboptimalen Ausführungsplänen geben, die viel mehr physikalische IO als notwendig erzeugen und die Gesamtleistung für die Datenbank verschlechtern. Verwenden von Speicher-Caching zum Beschränken von IO: Die Menge an IO, die von der Datenbank benötigt wird, wird durch die Verwendung einer Anzahl von Speicher-Caches begrenzt, z. B. Der Puffer-Cache, der Log-Puffer, verschiedene Sortierbereiche usw. Durch Erhöhung des Puffer-Cache bis zu einem Punkt werden mehr Pufferzugriffe von Datenbankprozessen (logische IOs) aus dem Speicher erfüllt, anstatt auf die Festplatte (physikalische IOs) . Wenn größere Sortierbereiche im Speicher vorhanden sind, wird die Wahrscheinlichkeit verringert, dass sie während eines Sortiervorgangs erschöpft sind und einen temporären Tabellenbereich verwenden müssen. Einstellen der Größe des Multiblock-IO: Die Größe der einzelnen Multiblock-IO-Operationen kann durch Instanzparameter gesteuert werden. Bis zu einem Limit werden Multiblock-IOs schneller ausgeführt, wenn es weniger größere IOs gibt als wenn es viele kleinere IOs gibt. Indexverwaltung: Enthält der Tablespace Indizes, ist eine weitere Option, die Indizes zu komprimieren, so dass sie weniger Platz und damit weniger IO benötigen. IO-Optimierung auf Betriebssystemebene: Hierbei werden IO-Fähigkeiten wie Asynchronous IO oder Dateisysteme mit erweiterten Funktionen wie Direct IO verwendet, die die Caches der Betriebssysteme umgehen. Eine weitere mögliche Maßnahme besteht darin, die Grenze der maximalen IO-Größe pro Transfer zu erhöhen. Load Balancing: Balancing der Datenbank IO durch Striping, RAID, Storage Area Networks (SAN) oder Network Attached Storage (NAS). Dieser Ansatz basiert auf Speichertechnologien wie Striping, RAID, SAN und NAS, um automatisch die IO-Datenbank der Datenbank auf mehrere verfügbare physische Datenträger zu laden, um Plattenkonflikte und IO-Engpässe zu vermeiden, wenn noch nicht genutzter Datenträger-Durchsatz in der Speicherhardware verfügbar ist. IO-Management: Datenbank-IO durch manuelle Platzierung von Datenbankdateien über verschiedene Dateisysteme, Controller und physikalische Geräte. Dies ist ein Ansatz in Abwesenheit von fortschrittlichen modernen Storage-Technologien verwendet. Wiederum ist es das Ziel, die Datenbank-IO zu verteilen, so dass kein einzelner Satz von Platten oder Controller von IO-Anforderungen gesättigt wird, wenn noch nicht genutzter Datenträger-Durchsatz vorhanden ist. Es ist schwieriger, sich zurecht zu finden als der bisherige Ansatz und meistens weniger erfolgreich. Volume: Verringerung der Datenmengen der aktuellen Datenbank durch Verschieben älterer Daten. Hardware: Investieren in modernere und schnellere Hardware. Burleson ist das amerikanische Team Anmerkung: Diese Oracle-Dokumentation wurde als Support - und Oracle-Schulungsreferenz für unsere DBA-Leistungsoptimierungsberater erstellt. Fühlen Sie sich frei, Fragen zu unserem Oracle Forum zu stellen. Überprüfen der Erfahrung Jeder, der die Verwendung eines Oracle-Support-Experten in Erwägung zieht, sollte selbstständig ihre Anmeldeinformationen und Erfahrungen untersuchen und sich nicht auf Anzeigen und selbst verkündete Fachkenntnisse verlassen. Alle legalen Oracle-Experten veröffentlichen ihre Oracle-Qualifikationen. Die Errata-Oracle-Technologie ändert sich und wir bemühen uns, unsere BC Oracle Support-Informationen zu aktualisieren. Wenn Sie einen Fehler finden oder Verbesserungsvorschläge haben, würden wir uns über Ihr Feedback freuen. Nur E-Mail: und geben Sie die URL für die Seite. Das Oracle der Datenbankunterstützung Copyright-Kopie 1996 - 2016 Alle Rechte vorbehalten durch Burleson Oracle reg ist das eingetragene Warenzeichen der Oracle Corporation.

No comments:

Post a Comment