Beispiele für SSQL
In unserem Rundschreiben hatten wir mehrere Aufgaben erwähnt. Hier nun die
Lösungen in SSQL zu diesen Aufgaben:
Eine Aufstellung aller Kunden, die im laufenden Jahr mindestens 5
Aufträge hatten oder mindestens für
2.000.- € Ware gekauft haben:
SELECT
1_kundnr, COUNT(1_kundnr), SUM(fenesum1) FROM as100ras GROUP BY 1_kundnr
HAVING (COUNT(1_kundnr) >= 5) OR (SUM(fenesum1) >= 2000)
Eine Liste aller Artikel, die irgendwo im Text den Begriff
„LEITUNG“ beinhalten:
SELECT
artnr, 1_bezeic, 2_bezeic, FROM as100art WHERE (UPPER(1_bezeic) LIKE
''*LEITUNG*'')
Eine Liste aller Artikel des Lieferanten mir Lief.-Nr. 70057, deren
Spanne im Verkauf stets unter 5% liegt:
SELECT
liefnrvp, artnr, eugesamt, ekpges, ekpges * 100 / eugesamt * -1 + 100 AS
" % " FROM as100rau
WHERE ( (ekpges * 100 / eugesamt * -1 + 100 < 5) OR (eugesamt = 0) ) AND (liefnrvp
= ''70057'')
Erhöhen des EKP um 5% für alle Artikel des Lieferanten 70057, die
der Warengruppe ''hand'' angehören:
UPDATE
as100lad SET ekp = ekp * 1.05 WHERE (lpersnr = ''70057'') and (artnr =
SELECT artnr FROM as100art WHERE (warengr = ''hand'')
)
Eine Kundenliste für alle Kunden, die in einem gewissen Zeitraum
einen bestimmten Artikel mindestens drei mal gekauft haben
SELECT a.1_kundnr,
a.1_name, a.belegdat, COUNT(b.artnr) FROM as100ras a JOIN as100rau b ON
a.auftrnr = b.auftrnr
AND a.ruecknr = b.ruecknr
WHERE ( (SUBSTR(b.artnr, 1, 7) = "0100100") AND (a.belegdat
> "01.01.2000") )
GROUP BY a.1_kundnr
HAVING (count(b.artnr) > 2)