Jan 21
Dieser Artikel ist eher ein Reminder an mich selbst bzw. ein Vorschlag, wie man meiner Ansicht nach am besten SQL-Syntax formatieren sollte. Neben dem Beispiel weiter unten gibt es noch ein paar weitere Konventionen (to be continued…), die die Les- und Wiederverwendbarkeit steigern:
- Sprechende Tabellen-Aliase, aus customer_shipping_adresses wird z.B. csa
- Immer die Datenbank angeben, nicht nur die Tabelle, also db.user.table
- Kommata in Feldlisten vor den Feldnamen, erleichtert das auskommentieren
Meine Konventionen bzw. mein Vorschlag ist natürlich Geschmackssache. Ich habe diesbezüglich schon viel gesehen. In der Doku (von Microsoft zum Beispiel) ist die Syntax gänzlich anders dargestellt. Ich bin allerdings der Meinung, dass der “Quellcode-Style” wesentlich besser lesbar ist:
SELECT tab1.field1 ,tab1.field2 ,tab2.field1 ,case tab2.field2 when 'value1' then REPLACE(tab2.field2, 'search', 'replace') else tab2.field2 end AS field2 ,tab3.field1 FROM db1.user1.table1 tab1 INNER JOIN db1.user1.table2 tab2 ON tab1.field1 = tab2.field1 LEFT JOIN db2.user2.table3 tab3 ON tab2.field1 = tab3.field1 WHERE tab1.field1 LIKE 'value2' AND tab2.field1 = 'value3' AND tab3.field1 IN ( SELECT DISTINCT tab4.field1 FROM db3.user3.table4 tab4 ) ORDER BY tab1.field1 ASC ,tab2.field1 ASC







