sql >> Databáze >  >> RDS >> Oracle

Více sloupců SQL v klauzuli IN pro převod na JPA

Nevím, co je JPA (můžu si to vygooglovat; chci říct, že to neznám); ale:pokud existuje nějaká naděje na zpracování SQL dotazu a jediným problémem je překlad podmínky na n-ticích, přepište dotaz takto:

select city 
from   user
where  firstname = 'a' and lastname = 'b'
   or  firstname = 'c' and lastname = 'd'
;

To je to, co dotazovací stroj udělá s vaším původním dotazem bez ohledu na to; můžete se podívat na EXPLAIN PLAN, abyste se o tom přesvědčili.

Někteří lidé rádi vkládají závorky kolem každého páru AND -připojené podmínky; Ne, o nic víc, než bych použil závorky pro 2 * 3 + 4 * 6, ale pokud máte pocit, že zvyšují jasnost, rozhodně je můžete přidat.



  1. Analyzujte výchozí hodnoty parametrů pomocí prostředí PowerShell – část 3

  2. Vyhněte se uzamčení databázového dodavatele pro MySQL nebo MariaDB

  3. Použití funkcí více oken na stejném oddílu

  4. Použití Template::Toolkit s daty pole z databáze