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

mysql Къде не в използването на две колони

Можете да използвате това (по-компактен синтаксис):

SELECT *
FROM CompletedTasks
WHERE (userID, taskID) NOT IN
      ( SELECT userID, taskID
        FROM PlannedTasks
      ) ;

или NOT EXISTS версия (която макар и по-сложна, трябва да е по-ефективна с подходящи индекси):

SELECT c.*
FROM CompletedTasks AS c
WHERE NOT EXISTS 
      ( SELECT 1
        FROM PlannedTasks AS p
        WHERE p.userID = c.userID
          AND p.taskID = c.taskID
      ) ;

и разбира се LEFT JOIN / IS NULL версия, която @jmacinnes има в отговора си.



  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

  3. Използвате слоя на база данни на Django извън Django?

  4. Изтрийте първите X реда от база данни

  5. Предупреждение:mysqli_connect():Неизвестен хост на MySQL сървър