Ich bin schon das ganze Wochenende am Programmieren, und stehe jetzt vor einem kleinen Problem und kann ohne Lösung leider nicht weitermachen. Ich habe eine Select-Anweisung mit Subselect, kann aber dank MySQL keine Subselects, Union und Views nutzen. Vielleicht kann mir hier ja jemand weiterhelfen, ich finde einfach keine Lösung:
SELECT fid,frage,image,typ
FROM frage
WHERE fid NOT IN
(SELECT fid
FROM ergebnisse
WHERE uid = ‚$uid‘
AND rid = ‚$rid‘
AND ergebnis = ‚r‘
)
So müßte es mit Subselect aussehen, ich konnte es leider nicht testen, aber sollte denke ich richtig sein. Nur wie bekomme ich nun das gleiche Ergebnis ohne Subselect/Union/Views hin?
Durch die weiteren Bedingungen in deinen Subselect geht das
nicht so leicht, sondern erst mit einem Zwischenschritt:
CREATE VIEW temp AS
Hallo José,
danke für die Antwort. Leider hat das ganze nen Haken: Ich kann auch keine Views nutzen, die werden bei MySQL (zumindest bei meiner Version) zur Zeit auch noch nicht unterstützt.
Meine bisher beste Lösung ist das hier:
SELECT f.fid,f.frage,f.image,f.typ,e.fid
FROM frage f,ergebnisse e
WHERE e.fid f.fid
AND e.ergebnis = 'r'
AND e.uid = '$authuser'
AND e.rid = '$rid'
Das funktioniert alles soweit, nur werden noch Datensätze ausgegeben, wo e.ergebnis = ‚r‘ ist. Ich schätze, so einfach kann ich mir das wohl nicht machen, was?
Hab ne Lösung gefunden
Wollte nur kurz Bescheid geben, dass ich eine Lösung gefunden habe und sich damit das Problem erledigt hat. Ich mache es jetzt mit zwei Abfragen und einem Array…