Auswertungen SQL-Grundlagen

Mit SQL-Auswertungen stehen Ihnen alle Daten der Labordatenbank zur Verfügung. Dies ist ein mächtiges Werkzeug, um alle Daten in der gewünschten Form auszugeben. Um diese Funktion freizuschalten werden vorab die Grundlagen in Form einer Schulung vermittelt.

1. Grundbaustein

Eine Auswertung besteht aus einem SQL-Code mit folgendem Inhalt:

SELECT

samples.name AS 'Probe',

samples.description AS 'Bezeichnung'

FROM samples

WHERE samples.visible_to != 'deleted'

ORDER BY samples.name DESC;



2. Elemente

Folgende Elemente werden meistens genutzt:



SELECT: Spalten

AS: Spaltenbezeichnung (optional)

FROM: Daten-Herkunftstabelle

WHERE: Bedingungen

ORDER BY: Sortierung



3. Abfragebausteine

Folgende Abfragebausteine können Sie in Ihrer Auswertung nutzen:



WHERE samples.visible_to != 'deleted' Blendet gelöschte Proben aus



WHERE samples.date BETWEEN FROMDATE AND TILLDATE Lässt die gesamte Auswertung nach Zeiträumen filtern (Labordatenbank-interne Variable, siehe Anleitung Variablen in Auswertungen). Der Filter wird über der Auswertung angezeigt.









ORDER BY samples.date DESC Sortiert absteigend (DESC) nach Probendatum (oder ASC für aufsteigend).



Noch mehr Beispiele für Auswertungen finden Sie unter : Auswertungen -> Beispiele



4. JOIN

Um mehrere tabellen miteinander zu verbinden, wird ein JOIN benötigt.

code>SELECT FROM alteTabs



JOIN neueTabs ON alteTabs.id = neueTabs.alteTab_id;



Beachte: in der Labordatenbank sind alle Tabellen in Mehrzahl (Tabs), die Spaltenbezeichnungen meist in Einzahl (Tab). Dies erleichtert die Unterscheidung zwischen Tabellenbezeichnung und Spaltenbezeichnung.



Anbei eine kleine Übersicht welche Tabellen für die Bereiche: Auftrag-Probe-Ergebnis-Parameter-Spezifikation miteinander verknüpft sind.







5. Verlinkungen

Um in der Ergebnistabelle Links zu erhalten ist ein Labordatenbank-interne Verlinkungssystem:

Um z.B. zur Probendetailansicht zu verlinken verwendet man:

CONCAT('link==../samples/view/', samples.id, '==', samples.name) as 'Proben'

../samples/view/' = LDB-interner Link

samples.id=Teil des Links

samples.name = Anzeigewert

'Proben' =Spaltenüberschrift



6. Verlinkte Stammdatenfelder

zB.: Ein Stammdatenfeld bei Proben (DDF_KUNDE) ist mit den Kunden-Nummern verlinkt, dann folgenden SELECT/JOIN nutzen:

customers.name as 'Kunde'

FROM samples

JOIN customers ON samples.DDF_KUNDE = customers.id





7. Funktionen

BeispielErgebnisBemerkung
Wenn-Dann (CASE)SELECT CASE WHEN MeinFeld = 0

THEN 'Ist Null' ELSE 'Nicht 0' END

AS 'Ergebnis'

FROM meineTabelle;
Wenn MeinFeld = 0 dann Ergebnis = 'Ist Null' ansonsten Ergebnis = 'Nicht 0'ELSE (= ansonsten) ist optional
Wenn-Dann (IF)IF (MeinFeld = 0,'Ist Null', 'Nicht 0')

AS 'Ergebnis'

FROM meineTabelle;
Wenn MeinFeld = 0 dann Ergebnis = 'Ist Null' ansonsten Ergebnis = 'Nicht 0'
Decimal Zahlenformat CAST(REPLACE(parameters.value0, ',', '.') AS DECIMAL(12,2))1.05 -> 1,05

100.2312 -> 100,23
ersetzt das Komma durch einen Punkt und erzeugt mit CAST … as DECIMAL(12,2) eine Dezimalzahl. 12= Gesamtzahl der Stellen, 2 = Anzahl Stellen nach Komma


Letzte Änderung: 03.04.2024

Allgemeines

Einführungsphase

Mitarbeiter

Aufträge

Proben

Probenvorlage

Berichte

Berichtstabellen Editor

Kunden

Kundenzone (optional)

Anlagen

Angebote

Rechnungen

Parameter

Rechnen mit Parametern

Schnittstellen

Webservice

Transformationscode

Prüfpläne / Grenzwerte / Spezifikationen

Dokumentenlenkung

Prüfmittel

Material

Mitarbeiterschulungen

8D-Report

Sonstiges

PDF-Vorlagen

Fragen und Antworten

Lieferantenbewertung

Dateiverwaltung

Auswertungen

Prozesse