【发布时间】:2020-12-20 01:53:21
【问题描述】:
我正在尝试编写一个查询来检索最大调度日期,并从多个表中引入字段。我使用其他表中的字段,因为包含发送日期的表不包含我要查找的任何信息。 (希望有意义)这是我目前正在使用的代码,但它不起作用:
select a.order_num,
LAB_USER.NAME as ASGN_TECH,
(select max(asn_assignment.dispatched)
from asn_assignment
where a.for_order=asn_assignment.for_order) as "max date"
from asn_assignment, ord_order_state a, lab_user, lab_resource, asn_assignment
where
LAB_USER.USER_ID = LAB_RESOURCE.FOR_USER
AND LAB_RESOURCE.RESOURCE_ID = ASN_ASSIGNMENT.FOR_RESOURCE
and order_num in ('800000194709',
'800000213722',
'800006513931',
'800006525705')
【问题讨论】:
-
用您正在使用的数据库标记您的问题。样本数据和期望的结果也有帮助。为什么不使用正确、明确、标准、可读的
JOIN语法? -
你犯了这么多问题。您在 from 语句中有 2 个 asn_assignment 表,并且没有条件让 ord_order_state 与其他表相关。
-
添加您的表格列以及示例数据,这样我们至少可以解决您的问题并尽可能解决它。
标签: sql oracle greatest-n-per-group analytic-functions