Anke: Brauche dringend Hilfe um ein ASP Problem zu lösen!

Ich möchte 1 *Record* aus meiner Tabelle rausfischen.
1. Es sollte ein Record sein wo das Feld *bild* nicht den inhalt (none) drin hat. (None) ist Standardwert für dieses Feld.
2. Dieser Record sollte ausserdem das neuste sein (mit der grössten ID Nummer von allen den vorhandenen records die etwas anderes als *none* drin haben)

Nun so habe ich es versucht aber alles was ich bisher versucht habe hat nicht geklappt:
----

<%
SQL=SELECT TOP 1 * FROM BilderDB where not einbild=none ORDER BY id DESC;"
set rs = MyConn.execute(SQL)
%>
Das neuste Bild!<br>
<img src="../images/<%response.write rs("einbild")%>.jpg">

<%rs.close%>
-----
Oder auch so habe ich es versucht:
-----
<%
SQL=SELECT * FROM BilderDB ORDER BY id DESC;"
set rs = MyConn.execute(SQL)
DO while not rs.eof
einbild=rs("einbild")
%>
<%
if not einbild="none" then%>
Das neuste Bild!<br>
<img src="../images/<%response.write rs("einbild")%>.jpg">
<%else%>
<%end if%>
<%
rs.movenext
loop
%>
<%rs.close%>

---
Doch bei der 2 Abfrage bekomme ich alle Einträge wo sich ein Bild befindet

Bitte helft mir sonst muss ich noch die ganze Nacht daran hängen :(

Tschüss

Anke

  1. Hallo Anke,

    Ich möchte 1 *Record* aus meiner Tabelle rausfischen.

    1. Es sollte ein Record sein wo das Feld *bild* nicht den inhalt (none) drin hat. (None) ist Standardwert für dieses Feld.
    2. Dieser Record sollte ausserdem das neuste sein (mit der grössten ID Nummer von allen den vorhandenen records die etwas anderes als *none* drin haben)

    (None) soll wahrscheinlich NULL sein, oder? Dann sollte Deine Anfrage
    ungefähr so aussehen:

    SQL= "SELECT * FROM BilderDB where einbild NOT IS NULL AND id = (SELECT max(ID) FROM BilderDB)"

    Wenn einbild eine leere Zeichenfolge (also "") ist, mus die Abfrage so aussehen:

    SQL= "SELECT * FROM BilderDB where einbild <> '' AND id = (SELECT max(ID) FROM BilderDB)"

    durch den Subselect id = (...) wird nur die groesste ID zurückgegeben.

    Tschau, Stefan