SQL Hilfe Hausaufgaben?

...komplette Frage anzeigen

2 Antworten

Du brauchst dazu doch nicht umzurechnen. Es ist egal, wieviel cm das sind, die Stückzahl ist dann immer 1.

SELECT teilenr, 1 FROM  tabelle 
WHERE einheit = 'cm'
UNION
SELECT teilenr, sum(anzahl) FROM tabelle
WHERE einheit = 'ST'
ORDER BY 1

Bitte beachten:

Die UNION-Anweisung verbindet das Ergebnis mehrerer SELECTs, deren Satzstruktur übereinstimmen muss (nur vom Typ, nicht vom Namen her).

Zum Sortieren darf man bei der Verwendung von UNION keinen Feldnamen angeben, weil dieser ja bei jedem SELECT unterschiedlich sein kann.  Stattdessen muss man die Position der Spalte angeben. Hier eine 1 für 1. Spalte.

Die UNION-Anweisung verbindet mehrere SELECTs, deren Satzstruktur übereinstimmen muss (nur vom Typ, nicht vom Namen her).

Die SORT-Anweisung bezieht sich immer auf das Gesamtergebnis und darf deshalb auch nur einmal ganz hinten angegeben werden.

Antwort bewerten Vielen Dank für Deine Bewertung

du musst mit IF() arbeiten

wobei brauchst du genau hilfe was hast du schon erreicht?


Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Teemo91
27.05.2016, 18:22

naja ich bin mir nicht sicher wie ich von 30cm auf 1 stück umwandeln soll. Mit if() haben wir leider noch nicht gearbeitet.

Select teilnr, anzahl, einheit
from teilestruktur
group by teilnr, anzahl, einheit
order by teilnr desc

0

Was möchtest Du wissen?