sql >> Database >  >> RDS >> Mysql

UNION ALL en LIMIT in MySQL

Momenteel voert MySQL alle selecties uit op een unie, zelfs als er voldoende rijen zijn in de eerste paar zoekopdrachten, zoals @Yuki Inoue in hun antwoord vermeldde. Als u het antwoord van @user1477929 gebruikt, kunt u uw vraag herschrijven als:

(SELECT a FROM t1 WHERE a=10 AND B=1 LIMIT 1000) 
UNION ALL 
(SELECT a FROM t2 WHERE a=11 AND B=2 LIMIT 1000) 
UNION ALL 
(SELECT a FROM t3 WHERE a=12 AND B=3 LIMIT 1000) 
ORDER BY a LIMIT 1000;

waarmee u maximaal 1000 rijen krijgt en nooit meer dan 3000 scant.



  1. Hoe voorkom je dat iemand teruggaat naar de vorige pagina?

  2. SQL Server Foreign Keys over databasegrenzen heen - technieken voor handhaving

  3. MySql met de juiste syntaxis voor de over-clausule

  4. postgresql met functie wrap sql zo traag?