Votre requête peut être traduite dans le code jOOQ suivant :
// Assuming this:
import static org.jooq.impl.DSL.*;
using(configuration)
.deleteFrom(MY_TABLE)
.where(row(MY_TABLE.FIRST, MY_TABLE.LAST).notIn(
row("Joe", "Smith"),
row("Mark", "Taylor")
))
.execute();
Ceci utilise DSL.row()
pour construire des expressions de valeur de ligne. Notez que ROW
est un mot clé facultatif dans PostgreSQL. Vous venez de l'omettre dans votre exemple SQL.
Voir aussi la section du manuel sur le IN
prédicat pour degrés> 1 :
http://www .jooq.org/doc/latest/manual/sql-building/conditional-expressions/in-predicate-degree-n