Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql Union time V.S. отделна заявка една по една

UNION операторът изисква дублиращи се кортежи (редове) да бъдат премахнати от набора от резултати, преди да бъдат върнати каквито и да е редове. Това на практика е SORT UNIQUE операция. Това е сравнително евтино за малки набори от резултати, но за масивни набори може да е ресурсно интензивно за времето на сървъра (т.е. да отнеме много време.)

На теория, комбиниране на заявките с UNION ALL оператор, а не UNION операторът ще бъде най-бърз, тъй като ще елиминира (n -1) връщане към базата данни, срещу изпълнение на заявки отделно. Но за големи стойности на n , ще се сблъскате с практически ограничения за размера на SQL текста (макс. размер на пакета).

Предвид избора между UNION оператор и отделни заявки, за голям набор от резултати отделните заявки ще бъдат по-малко ресурсоемки от страна на сървъра.

Накратко, това наистина е компромис между тежката работа за всяка заявка срещу тежката работа на операция SORT UNIQUE.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Съставни ключове на MySql и нулеви стойности

  2. Активиране на отдалечена MySQL връзка:ГРЕШКА 1045 (28000):Достъпът е отказан за потребителя

  3. MySql, как мога да експортирам индекси от моята база данни за разработка в моята производствена база данни?

  4. Твърдо кодиран потребител и парола на mysql в Node.js

  5. Достъпът е отказан за потребител „[email protected]“ (използвайки парола:НЕ)