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

По-ефективна заявка от NOT IN (вложен избор)

Надстройте до MySQL 5.6, което оптимизира по-добре полусъединенията срещу подзаявки.

Вижте http://dev.mysql.com/doc/ refman/5.6/en/subquery-optimization.html

Или използвайте съединение за изключване:

SELECT COUNT(t1.table1_id) FROM table1 t1 
LEFT OUTER JOIN table2 t2 USING (table1_id)
WHERE t2.table1_id IS NULL

Също така се уверете, че table2.table1_id има индекс върху него.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Предотвратяване на SQL инжектиране

  2. Как мога да съединя A с B и също B с C едновременно?

  3. MySQL - изтегляне на списък в зависимост от датата и категорията

  4. Производителност на MySQL ИЗТРИВАНЕ или АКТУАЛИЗИРАНЕ?

  5. PHP база данни Невалиден аргумент, предоставен за foreach()