AQL Abfrage: Suche nach Personen

  • Hi,

    ich habe ein Problem mit einer Suchabfrage.


    Query – Anforderung:
    Ich möchte Bilder suchen, auf denen eine BESTIMMTE Person ALLEINE auf einem Bild ist.


    Dazu habe ich Folgenden Query -> Die Abfrage funktioniert ohne Probleme auf der Datenbank, in Imabas bekomme ich aber nur Fehler oder keine Treffer


    Die Variable '@text;Personenname@' sollte eigentlich so aussehen '%@text;Personenname@%'…


    select bilder.ukey from bilder
    INNER JOIN bildpersonen ON bilder.ukey = bildpersonen.bild
    where bilder.ukey in
    (
    select bilder.ukey from bilder
    INNER JOIN bildpersonen ON bilder.ukey = bildpersonen.bild
    INNER JOIN personen ON personen.ukey = bildpersonen.person
    where personen.caption like '@text;Personenname@'
    )
    GROUP BY bilder.ukey HAVING ((Count( bilder.ukey))=1);

    Was mache ich hier falsch?

    Danke

    Lg

  • Versuchs mal damit:

    Code
    1. select b.* from bilder b, bildpersonen bp, personen p where
    2. b.ukey in (SELECT bild FROM bildpersonen GROUP BY bild HAVING COUNT(*) = 1)
    3. AND b.ukey = bp.bild AND bp.person = p.ukey AND p.caption LIKE '@text;Personenname@';

    Ich habe bei mir die Personen zwar leider erst sehr rudimentär eingepflegt, aber auf den ersten Blick sieht's nicht schlecht aus mit meiner PostgreSQL-DB.