'ORDER BY RAND()' ist auch nicht schlecht. Performanceoptimierend wirkt sich das nicht aus.
Und dann würde ich es mal mit einem LEFT JOIN probieren, also
SQL-Code:
select *
from DB_1 k
left join DB_2 x on k.link_ID = x.link_ID and bearbeiter like :bearbeiter
where x.link_ID is null
Ich muss zugeben, bei LEFT JOINS die Datensätze zu filtern, die gerade *nicht* passen, ist nicht so einfach. ich glaub aber, so sollte es klappen. Vielleicht musst Du die Bearbeiter-Klausel ins WHERE verschieben.
Das Bild hängt schief.