Erstellen einer berechneten SQL-Spalte
In diesem Abschnitt werden Zweck und Verwendungszwecke des Calculation Spaltentyps beschrieben, der mithilfe des Data Warehouse Managers} zu Tabellen hinzugefügt kann. Im Folgenden wird erläutert, was SQL-Berechnungen bewirken, warum sie verwendet werden und wie eine SQL-Berechnung erstellt wird. Nachfolgend werden zwei Beispiele beschrieben.
Erläuterung
Früher konnten Spalten, die als advanced eingestuft wurden, nur von einem Analyst im Customer Success-Team hier bei Adobe Commerce Intelligence erstellt werden. Jetzt liegt die gesamte Macht in den Händen des Endbenutzers, und erweiterte Spalten können in Form von SQL Calculation Spalten in der neuen Commerce Intelligence-Architektur erstellt werden.
Der Calculation Spaltentyp, der jetzt als Option im Data Warehouse Manager verfügbar ist, ist ein Tabellenvorgang, mit dem Sie die Spalten einer Tabelle mithilfe der PostgreSQL-Logik umwandeln können. Dokumentationen zu den Funktionen und Operatoren, die im Calculation Spaltentyp verwendet werden können, finden Sie auf der PostgreSQL-Website hier.
Die verschiedenen Spalten, die mit der Calculation Spalte erstellt werden können, sind nahezu unbegrenzt, aber die meisten Spalten können mit IF-THEN-Anweisungen und einfacher Arithmetik erstellt werden, die in den folgenden Beispielen verwendet wird.
Beispiel 1: Ist die letzte Bestellung des Kunden?
Die meisten Konten verfügen über eine Spalte namens Is customer's last order? in ihrer orders, um Analysen zu Wiederholungskäuferraten und abgewanderten Kunden durchzuführen. Wenn sich Ihr Konto auf der neuen Architektur befindet, wird diese Spalte mithilfe einer Calculation Spalte erstellt und ist im folgenden Screenshot zu sehen:
Die Spalte Is customer's last order? verwendet die Eingaben Customer's lifetime number of orders und Customer's order number Alias A bzw. B.
Zeile für Zeile hat PostgreSQL folgende Bedeutung:
- case: Dies startet eine Reihe von If - Then-Anweisungen
- Wenn
Anull oderBnull ist, dann null: Wenn eine der Eingaben leer ist, sollte die Ausgabe ebenfalls leer sein. Dadurch sollen SQL-Fehler verhindert werden - Wenn
A=BdannYes: WennCustomer's lifetime number of ordersgleichCustomer's order numberfür diese Zeile ist, dannYeszurückgeben. Wenn also ein Kunde vier Bestellungen aufgegeben hat, würde die Zeile für die vierte BestellungYesfürIs customer's last order?zurückgeben - else
No: Wenn keine der anderen Aussagen erfüllt ist,Nozurückgeben - end: Damit werden die If - Then-Anweisungen beendet
Die möglichen Werte, die von dieser Spalte zurückgegeben werden können (NULL, Yes, No) enthalten Nicht-Zahlenzeichen, sodass der Datentyp hier „String“ ist.
Beispiel 2: Gesamtwert des Auftragspostens (Menge * Preis)
Viele Kunden analysieren den Umsatz gerne auf Artikelebene, indem sie ihn nach Feldern wie product name oder category aufteilen. Die meisten Datenbanken geben einem nicht den Umsatz eines Produkts in einer Bestellung, sondern sie liefern die Menge, die in der Bestellung verkauft wird, und den Preis des Artikels.
Um Analysen des Produktumsatzes zu ermöglichen, verfügen die meisten Konten in ihrer Order item total value (quantity * price) über eine Spalte mit dem Namen Orders Items. Wenn sich Ihr Konto auf der neuen Architektur befindet, wird diese Spalte auch mit einer Calculation Spalte erstellt und ist im folgenden Screenshot zu sehen:
Im Commerce-Schema verwendet die Order item total value (quantity * price) die qty ordered Eingaben und base price Alias A bzw. B.
Die von dieser neuen Spalte zurückgegebenen Werte lauten in Dollar und Cent, sodass der richtige Datentyp Decimal(10,2) ist.
Mechanik
Eine neue Calculation Spalte kann zu einer Tabelle hinzugefügt werden, indem Sie zu Manage Data > Data Warehouse navigieren, wie unten dargestellt:
Gehen Sie wie folgt vor, um eine Calculation Spalte zu erstellen:
-
Wählen Sie die Tabelle aus, der Sie die
Calculationhinzufügen möchten. -
Klicken Sie auf der richtigen Tabelle oben rechts im Bildschirm auf Create New Column.
-
Wählen Sie im Dropdown-Menü
Select a definitiondie OptionSame Tableaus. -
Wählen Sie
Calculationalscolumn definition equationaus. -
Geben Sie den Spaltennamen ein.
-
Wählen Sie die
inputSpalten aus der Tabelle aus, die in der Logik für Ihre neue Spalte verwendet werden. Jede hinzugefügte Spalte erhält einen Alias für den Brief, sodass die erste SpalteA, die zweiteBwird usw. -
Geben Sie im Fenster die PostgreSQL-Logik für Ihre neue Spalte mithilfe der Buchstabenaliase Ihrer Eingaben ein. Die SQL-Berechnung sollte auf eine einzelne Spaltendefinition beschränkt sein, einschließlich der gesamten Logik zwischen den SELECT- und FROM-Anweisungen einer SQL-Abfrage. SQL-Schlüsselwörter, die einen der Eingabebriefe verwenden, sollten in Kleinbuchstaben geschrieben werden. Wenn Sie beispielsweise die Anweisung
CASEverwenden, sollte sie in Kleinbuchstaben geschrieben werden -case. Das System geht davon aus, dass einAin Großbuchstaben auf eine der Eingaben verweist. -
Wählen Sie den entsprechenden Datentyp aus.
Integer- Ganze ZahlDecimal(10,2)- Eine Dezimalzahl mit 10 Gesamtziffern, von denen sich 2 rechts neben dem Dezimalpunkt befindenString- Jeder Text- oder Zeichenfolgentyp, bei dem andere Zahlen als Zahlen verwendet werdenDatetime-yyyy-MM-dd hh:mm:ss
-
Klicken Sie auf test column. Dadurch wird eine Liste von fünf Testwerten für jede Ihrer Eingaben generiert und das Ergebnis der Logik aus Schritt 6 für jeden Satz von Testwerten angezeigt. Wenn ein Teil der SQL einen Fehler erzeugt, wird die entsprechende Fehlermeldung zurückgegeben. Beispielergebnisse können nur generiert werden, wenn alle Eingabespalten native Felder sind. Wenn es sich bei einer der Eingabespalten um berechnete Spalten handelt, müssen Sie die Ergebnisse überprüfen, indem Sie die Spalte zu einer Metrik hinzufügen und in der Visual Report Builder anzeigen
-
Wenn Sie mit den Ergebnissen zufrieden sind, klicken Sie auf Save. Die Spalte ermöglicht die Verwendung.