【发布时间】:2014-01-25 22:26:07
【问题描述】:
我是 SQL 新手,遇到问题希望您能帮助我:
mysql5
表 TRAINING_REQUESTS
+------------+--------+ | ID_TR |领域 | +------------+--------+ | ... | .. | | 254 | .. | | ... | .. | | 286 | .. | | ... | .. | | 401 | .. | | ... | .. | | 405 | .. | | 406 | .. | | ... | .. | +------------+--------+表 PLANNING_REQUESTS
+----------+----------+----------+ | ID_PR | ID_TR |培训师 | +----------+----------+----------+ | ... | ... | ... | |第475章254 |空 | |第476章254 |空 | |第477章254 |空 | | 478 | 286 |空 | |第479章286 |免费 | | 480 | 286 |免费 | | 481 | 401 |免费 | |第482章401 | 1 | |第483章401 |免费 | | 484 | 405 |空 | | 485 | 405 | 1 | |第486章405 | 5 | |第487章405 |免费 | | 488 | 406 | 1 | | 489 | 406 | 5 | | 490 | 406 | 5 | | 491 | 406 | 2 | | ... | ... | ... | +----------+----------+----------+我需要三样东西:
预期结果
约束:所有不正常的training_requests(ID_TR),这意味着 (>> ALL TRAINING REQUESTS(ID_TR) 有 ALL ASSIGNED PLANNING REQUESTS(ID_PR) WITH TRAINER EQUALS(NULL 或 FREE)
+------------+--------+ | ID_TR |领域 | +------------+--------+ | 254 | .. | | 286 | .. | +------------+--------+约束:几乎没问题的所有 training_requests (ID_TR),这意味着 (>> ALL TRAINING REQUESTS(ID_TR) 有 ALL ASSIGNED PLANNING REQUESTS(ID_PR) 与培训师至少有一次不同(空或免费) 并非所有都分配有培训师(不同于 NULL 或 FREE)
+------------+--------+ | ID_TR |领域 | +------------+--------+ | 405 | .. | +------------+--------+约束:所有不正常和几乎正常的training_requests
+------------+------+ | ID_TR |字段 | +------------+------+ | 405 | .. | | 254 | .. | | 286 | .. | +------------+------+谢谢大家!
【问题讨论】:
-
您是否尝试过编写您的查询?
-
ofc 我试过但我是 sql 初学者,我不知道如何查询交叉引用表
-
你知道
JOIN是什么吗?还是EXISTS? -
是的,我知道吗?像内部连接
-
sub-queries在WHERE子句中怎么样?
标签: mysql sql cross-reference