sql >> Databáze >  >> RDS >> PostgreSQL

Použijte JOOQ k provedení odstranění s uvedením více sloupců v klauzuli not in

Váš dotaz lze přeložit do následujícího kódu jOOQ:

// 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();

Toto používá DSL.row() k vytvoření výrazů hodnoty řádku. Všimněte si, že ROW je volitelné klíčové slovo v PostgreSQL. Náhodou jste to ve svém příkladu SQL vynechali.

Viz také část manuálu o IN predikát pro stupně> 1:

http://www .jooq.org/doc/latest/manual/sql-building/conditional-expressions/in-preddicate-degree-n



  1. Seskupení MySQL s polem odděleným čárkou

  2. Duplicitní hodnota klíče IntegrityError porušuje jedinečné omezení – django/postgres

  3. jak vložit data řetězce do tabulky jako data různých sloupců v řádku

  4. jak mám definovat sekvence v mém projektu (který používá hibernaci) tak, aby projekt fungoval s Oracle i Mysql.