Created
June 10, 2013 11:33
-
-
Save meitinger/5748131 to your computer and use it in GitHub Desktop.
Query for internal use.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SELECT | |
IF ( | |
Verkaufsbeleg_Pos.Artikelnummer LIKE '1_e' OR Verkaufsbeleg_Pos.Artikelnummer LIKE '1_e-%', | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
) / 10000, | |
0 | |
) AS "Taxierte Gäste", | |
IF ( | |
Verkaufsbeleg_Pos.Artikelnummer LIKE '1_e%', | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
) / 10000, | |
0 | |
) AS "Taxierte Nächte", | |
IF ( | |
(Verkaufsbeleg_Pos.Artikelnummer LIKE '1__' OR Verkaufsbeleg_Pos.Artikelnummer LIKE '1__-%') AND SUBSTRING(Verkaufsbeleg_Pos.Artikelnummer,3,1) <> 'e', | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
) / 10000, | |
0 | |
) AS "Nicht-Taxierte Gäste", | |
IF ( | |
Verkaufsbeleg_Pos.Artikelnummer LIKE '1__%' AND SUBSTRING(Verkaufsbeleg_Pos.Artikelnummer,3,1) <> 'e', | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
) / 10000, | |
0 | |
) AS "Nicht-Taxierte Nächte", | |
Verkaufsbeleg_Kopf.KasseNummer AS Kasse, | |
IF (Nation.EU_Lieferschwelle = 1, Nation.Bezeichnung, 'Übriges Ausland') AS Nation, | |
Verkaufsbeleg_Kopf.Plz AS PLZ, | |
IF ( | |
LENGTH(Verkaufsbeleg_Kopf.Plz) = 4 AND Nation.Bezeichnung = 'Österreich', | |
IF (Verkaufsbeleg_Kopf.Plz BETWEEN 1000 AND 1999, '1000-1999 Wien', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 2000 AND 3999, '2000-3999 Niederösterreich', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 4000 AND 4999, '4000-4999 Oberösterreich', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 5000 AND 5999, '5000-5999 Salzburg', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 6000 AND 6699, '6000-6699 Tirol', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 6700 AND 6999, '6700-6999 Vorarlberg', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 7000 AND 7999, '7000-7999 Burgenland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 8000 AND 8999, '8000-8999 Steiermark', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 9000 AND 9899, '9000-9899 Kärnten', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 9900 AND 9999, '9900-9999 Tirol', 'Andere')))))))))), | |
IF ( | |
LENGTH(Verkaufsbeleg_Kopf.Plz) = 5 AND Nation.Bezeichnung = 'Deutschland', | |
IF (Verkaufsbeleg_Kopf.Plz BETWEEN 01000 AND 09999, '01000-09999 Ostdeutschland',IF (Verkaufsbeleg_Kopf.Plz BETWEEN 10000 AND 14199, '10000-14199 Berlin', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 14200 AND 14999, '14200-14999 Ostdeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 14400 AND 14499, '14400-14499 Ostdeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 15000 AND 19999, '15000-19999 Ostdeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 20000 AND 31999, '20000-31999 Norddeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 32000 AND 33999, '32000-33999 Nordrhein-Westfalen', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 34000 AND 36999, '34000-36999 Mitteldeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 37000 AND 38999, '37000-38999 Norddeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 39000 AND 39999, '39000-39999 Ostdeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 40000 AND 48999, '40000-48999 Nordrhein-Westfalen', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 49000 AND 49999, '49000-49999 Norddeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 50000 AND 53999, '50000-53999 Nordrhein-Westfalen', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 54000 AND 56999, '54000-56999 Mitteldeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 57000 AND 59999, '57000-59999 Nordrhein-Westfalen', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 60000 AND 69999, '60000-69999 Mitteldeutschland', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 70000 AND 79999, '70000-79999 Baden-Württemberg', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 80000 AND 87999, '80000-87999 Bayern', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 88000 AND 88999, '88000-88999 Baden-Württemberg', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 89000 AND 97999, '89000-97999 Bayern', IF (Verkaufsbeleg_Kopf.Plz BETWEEN 98000 AND 99999, '98000-99999 Ostdeutschland', 'Andere'))))))))))))))))))))), | |
'Andere' | |
) | |
) AS "Region", | |
Verkaufsbeleg_Pos.Artikelnummer AS Artikel, | |
IF ( | |
Verkaufsbeleg_Pos.Artikelnummer LIKE '1__-%', | |
SUBSTRING(Verkaufsbeleg_Pos.Artikelnummer,1,3), | |
IF ( | |
Verkaufsbeleg_Pos.Artikelnummer LIKE '1__f-%', | |
SUBSTRING(Verkaufsbeleg_Pos.Artikelnummer,1,4), | |
Verkaufsbeleg_Pos.Artikelnummer | |
) | |
) AS "Kombinierte Artikel", | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
) / 10000 AS Menge, | |
(Verkaufsbeleg_Pos.NettoEinzelKopfrab_1 * IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('R','E'), | |
Verkaufsbeleg_Pos.Menge, | |
IF ( | |
Verkaufsbeleg_Kopf.KassePrefix IN ('G','A'), | |
-Verkaufsbeleg_Pos.Menge, | |
0 | |
) | |
)) / 100000000 AS Brutto, | |
Vertreter.Name1 AS Verkäufer, | |
Verkaufsbeleg_Kopf.Datum AS Datum, | |
YEAR(Verkaufsbeleg_Kopf.Datum) AS Jahr, | |
MONTH(Verkaufsbeleg_Kopf.Datum) AS Monat | |
FROM | |
Nation Nation | |
RIGHT JOIN | |
Verkaufsbeleg_Kopf Verkaufsbeleg_Kopf INNER JOIN | |
Verkaufsbeleg_Pos Verkaufsbeleg_Pos | |
LEFT JOIN | |
Vertreter Vertreter | |
ON Vertreter.ID = Verkaufsbeleg_Pos.Vertreter_1_ID | |
ON Verkaufsbeleg_Pos.Belegkopfident_ID = Verkaufsbeleg_Kopf.Belegkopfident_ID | |
ON Nation.ID = Verkaufsbeleg_Kopf.Nation_ID |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment