Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

SQL Grundkurs 1: Die Sprache erlernen

Aliasnamen

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Spalten mit berechneten Werten sind toll! Schön sind sie aber erst, wenn sie mit Aliasnamen eine passende Spaltenüberschrift bekommen. Sehen Sie in diesem Video, wie Sie das umsetzen und Aliasnamen für Spalten definieren.

Transkript

Dieser Film zeigt Ihnen, wie Sie einer berechneten Spalte einen Spaltennamen geben können. Denn so wie hier, bei Microsoft SQL Server einfach stehen zu haben und "Kein Spaltenname" als Überschrift, ist weder schön noch professionell. Um also so einer Spalte eine Überschrift zu verpassen, müssen wir einen sogenannten "Spalten-Aliasnamen" vergeben. (Tippgeräusche) Dies bedeutet, dass hinter dem Ausdruck oder auch hinter dem Spaltennamen mit dem optionalen Schlüsselwort "AS" getrennt, ein entsprechender Name vergeben wird, z.B. "AS Gesamtpreis". Dieser Name wird nun definiert und durch das Schlüsselwort "AS" als Aliasname erkannt. Wenn ich nun dieselbe Anweisung noch einmal ausführe, bekomme ich jetzt hier anstelle von "Kein Spaltenname" den neuen Namen "Gesamtpreis" angezeigt. Allerdings habe ich gerade erwähnt, dass das Schlüsselwort "AS" optional ist. Dies bedeutet, dass es weggelassen werden kann. D.h., auch wenn wir "AS" nicht mit angeben, wird hier "Gesamtpreis" als Aliasname erkannt und korrekt im Ergebnis als Überschrift eingesetzt. Allerdings empfehle ich generell, das "AS" immer hinzuschreiben, weil einfach die Lesbarkeit der Anweisung deutlich besser ist, und auch die Fehleranfälligkeit dadurch verringert wird. Wenn wir den Aliasnamen in Groß-/Kleinschreibung hier verwenden ich füge das "AS" wieder ein und gebe hier dem Gesamtpreis ein großes "G" zu Beginn dann bekommen wir auch im Ergebnis dieselbe Darstellung. Das war auch der Grund, warum ich vorher Gesamtpreis ebenso kleingeschrieben habe, weil es doch etwas merkwürdig aussieht im Ergebnis, wenn alle Spaltenüberschriften in reiner Kleinschreibung angezeigt werden und nur dieser eine mit einem großen Buchstaben beginnt. Wie verhält es sich hier bei Oracle und MySQL? Sehen wir uns das Ganze zuerst einmal hier bei Oracle an. (Tippgeräusche) Wenn wir die Anweisung ohne Angabe eines Aliasnamens ausführen, sehen wir hier im Unterschied zu Microsoft SQL Server nicht "Keinen Spaltennamen" sondern den Ausdruck. Außerdem ist ein Unterschied, dass Oracle generell die Spaltennamen in Großbuchstaben hier darstellt. D.h, auch wenn wir sie hier klein eingeben und wir werden das gleich sehen auch beim Aliasnamen, wenn wir ihn klein eingeben, wird er in Großbuchstaben dargestellt. Die Groß-/Kleinschreibung bleibt verloren. Ansonsten ist alles gleich wie beschrieben. Hinter dem Schlüsselwort "AS" ergänze ich den "Gesamtpreis" als Aliasname, führe die Anweisung nochmals aus und nun haben wir hier den GESAMTPREIS, wie erwähnt, in Großbuchstaben geschrieben. Nun abschließend auch noch mit MySQL. Hier haben wir eine ähnliche Situation. Wenn wir die Anweisung ausführen, ohne einen Aliasnamen anzugeben, sehen wir hier die Formel. Allerdings wird hier die Groß-/Kleinschreibung übernommen und nicht generell in Großschreibung die Darstellung vorgenommen. Ich füge nun hier die Anweisung gleich über die Zwischenablage ein. Ich würde nur die Einrückungen hier noch anpassen und führe die Anweisung nun aus. Und nun haben wir auch hier diesen Aliasnamen hier im Ergebnis angezeigt. Aliasnamen können allerdings nicht nur für berechnete Spalten, sondern auch für ich nenne es jetzt einmal so normale Spalten verwendet werden. Z.B. möchte ich den Verkaufspreis brutto und netto ausgeben. (Tippgeräusche) In der Artikeltabelle finden wir den Verkaufspreis, sowie den Mehrwertsteuersatz. Der Verkaufspreis, der hier gespeichert ist, ist der Bruttopreis. Also müssen wir den Nettopreis ausrechnen. "SELECT*FROM Wawi.Artikel", nehmen die Artikelnummer, die Artikelgruppe, die Artikelbezeichnung, sowie den Verkaufspreis. Betrachten wir uns das Ergebnis vorweg, dann sehen wir hier den Bruttoverkaufspreis. In der Spalte "MwSt" finden wir die dazugehörige Mehrwertsteuer. Um jetzt hier den Nettopreis zu bekommen, müssen wir diese Mehrwertsteuer heraus rechnen. D.h., ich nehme den Verkaufspreis, dividiere ihn durch 100 plus die Mehrwertsteuer und rechne das ganze wieder mal 100, um so den Nettoverkaufspreis zu erhalten, "AS" und vergebe den Aliasnamen "VK-Netto". (Tippgeräusche) Nun sehen wir hier "VK-Netto" als Aliasname. Das hier ist hier nun der Bruttoverkaufspreis und jetzt könnte man zurecht sagen, hier habe ich so schön "VK-Netto" stehen, also möchte ich hier eigentlich "VK-Brutto" angezeigt bekommen. Und das ist selbstverständlich möglich. Weil Sie können auch bei jeder vorhandenen Spalte, nicht nur bei einer berechneten Spalte, jederzeit einen Aliasnamen vergeben. D.h., ich vergebe hier "VK-Brutto" und führe nun die Anweisung gleich noch einmal aus und wir sehen jetzt hier eine einheitliche Benennung der Spalten. Was können wir mit einem Aliasnamen nun noch realisieren? Aliasnamen können theoretisch auch Sonderzeichen, Leerzeichen enthalten oder aus reservierten Begriffen bestehen. Dazu müssen sie aber extra markiert werden. Möchte ich z.B. hier als Aliasname "Artikel-Nr." - Nr. für Nummer eingeben, bekomme ich natürlich, wenn ich das in dieser Art und Weise realisiere, eine Fehlermeldung: "Falsche Syntax in der Nähe 'Font'". Wenn ich allerdings einen solchen Aliasnamen in ANSI SQL unter doppelte Hochkomma setze, dann ist das zulässig und erlaubt. Man spricht hier von sogenannten "Quoted Identifiers", das gilt ja eigentlich nicht nur für Aliasnamen, sondern auch für echte Objektnamen, also Tabellennamen z.B., oder Spaltennamen. Aber sinnvollerweise wird man das hier nur für Aliasnamen einsetzen. Denn würde man so einen Namen als Spaltennamen in einer Tabelle vergeben, müsste man jedes Mal, wenn man darauf zugreift, daran denken, dass man die doppelten Hochkomma eingibt, und das ist eher mühsam, deshalb wird man darauf verzichten. Für einen Aliasnamen allerdings, wo es darum geht, für eine einmalige Anzeige, ein vielleicht optisch besseres Ergebnis zu erzielen, kann der Einsatz dieses Features durchaus Sinn machen. Das Gleiche wäre der Fall, wenn wir hier z.B. anstelle des Unterstriches der Unterstrich genauso wie das Dollarzeichen haben in ANSI SQL nämlich eine besondere Bedeutung, die gelten nicht als Sonderzeichen, wenn ich also hier, anstelle des Unterstrichs einen Leerschritt einfüge, habe ich dasselbe Problem. Das funktioniert in dieser Form nicht, weil das zwei einzelne Begriffe wären. Aber wenn ich hier den gesamten Aliasnamen wieder unter doppelte Hochkomma setze das Gleiche mache ich hier, um es einheitlich zu realisieren, beim Nettoverkaufspreis dann ist das Ganze möglich, und ich kann jetzt hier auch mit Leerzeichen bestückte Aliasnamen vergeben. Verwenden Sie also doppelte Hochkomma immer dann, wenn Aliasnamen entweder Leerzeichen, ein Sonderzeichen - wie gesagt, außer Unterstrich oder Dollarsymbol - enthalten oder einen reservierten Begriff aufweisen. Was ist damit gemeint? Sie könnten z.B. "Select" als Name vergeben wollen oder "From". Das wäre ohne doppelte Hochkomma nicht möglich. Zum Abschluss dieses Films möchte ich Sie noch auf eine Gefahr in Zusammenhang mit Aliasnamen hinweisen. Wir haben ja gehört, dass Aliasnamen mit dem optionalen Schlüsselwort "AS" vom eigentlichen Spaltennamen oder Ausdruck getrennt werden. Wenn ich jetzt z.B. hier folgende Anweisung eintippe - wiederum greife ich auf unsere Artikeltabelle in diesem Beispiel zu und verwende hier die Spalten "Artikelnummer", "Bezeichnung Gruppe", die "Nummer des Lieferanten", den "Einkaufspreis" und komme jetzt auf die Idee, dass ich aus Platzgründen oder wegen der besseren Lesbarkeit in eine neue Zeile wechsle... Ich gebe jetzt hier noch den "Verkaufspreis" ein, den "Mehrwehrtsteuersatz" möchte ich noch anzeigen, die "offene Bestellmenge", sowie die "Lieferzeit". Das soll ausreichen. Nun führe ich diese Anweisung aus. Wenn wir das Ergebnis nun genau betrachten: Wir haben zwar keine Fehlermeldung bekommen, aber es gibt dennoch ein Defizit. Und zwar: Wenn wir genau schauen, haben wir hier "Verkaufspreis" stehen, aber der "Einkaufspreis" fehlt. Fehlt er wirklich? Genau genommen nicht. Inhaltlich ist das, was wir hier sehen, sehr wohl der Einkaufspreis. Der Fehler, den wir gemacht haben und das ist ein typischer Tippfehler, dass wir hier vergessen haben, am Ende der ersten Zeile, wenn wir den Zeilenumbruch für den Verkaufspreis gemacht haben, ein Komma einzugeben. Dadurch ist was passiert? Das System hat "VK-Preis" als Aliasname für die Spalte "EK-Preis" interpretiert. D.h., hier steht zwar "VK-Preis" drüber, aber inhaltlich handelt es sich hier um den Einkaufspreis. Das ist deshalb möglich, da es in ANSI SQL nicht verboten ist, als Aliasnamen auch einen bestehenden Spaltennamen zu verwenden. Mit anderen Worten: An dieser Stelle wird hier aufgrund des fehlenden Kommas am Ende der ersten Zeile der VK, also der Verkaufspreis zum Alias für den Einkaufspreis. Dies ist vor allem dann gefährlich, wenn man sehr viele Spalten verwendet. Denn wenn man statt 5 nur 4 Spalten im Ergebnis sieht, fällt es ja vielleicht noch auf, aber wenn Sie statt 30 nur 29 Spalten haben, dann geht das womöglich unter. Und wenn Sie dieses Ergebnis dann auch weitergeben zur weiteren Bearbeitung, kann das vielleicht sogar negative Folgen mit sich ziehen. Deshalb immer beachten! Weil hier nützt es nichts, wenn Sie sagen, ich verwende ohnehin immer eine "AS", denn der Fehler ist ja dadurch entstanden, dass das Komma fehlt. Und das hätten Sie durch ein generelles Schreiben von "AS" nicht verhindern können. Deshalb bitte: Achtung bei solchen Situationen!

SQL Grundkurs 1: Die Sprache erlernen

Arbeiten Sie sich in die Grundlagen der Datenbanksprache SQL am Beispiel von Microsoft SQL Server, Oracle und MySQL ein und lassen Sie sich die praktische Nutzung erklären.

14 Std. 40 min (112 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!