【发布时间】:2017-08-01 12:43:04
【问题描述】:
我在这里阅读了一些帖子。使用这篇文章 (Select value A from the same record as max( value B) and then join with another table on value C) 我已经开始查询,但它不起作用。 Access 中是否允许嵌套 SELECT 查询?
领子
_______________________
|hole_id|max_depth|...|
| 1 | 340 | |
| 2 | 400 | |
| 3 | 250 | |
检测
______________________
|hole_id|depth_to|...|
| 1 | 58 | |
| 1 | 62 | |
| 1 | 69 | |
| 2 | 102 | |
| 2 | 110 | |
| 3 | 20 | |
| 3 | 25 | |
我要回去
________________________________
|hole_id|max_depth|depth_to|...|
| 1 | 340 | 69 | |
| 2 | 400 | 110 | |
| 3 | 250 | 25 | |
-
SELECT DISTINCT A.hole_id, A.max_depth, B.depth_from, B.depth_to
FROM collar A
LEFT JOIN assay B
ON A.hole_id = B.hole_id
WHERE A.hole_id = (
SELECT max(C.depth_to)
FROM assay C
WHERE C.hole_id = A.hole_id
)
WHERE A.max_depth > B.depth_to AND A.section="BLK" AND A.holetype="Exploration"
;
【问题讨论】:
-
我应该提到我有各种各样的其他领域,但我认为它们与逻辑无关。