[英]How do i run SQL function QUERY
我有4张桌子
EMPLOYEE
( E#, NAME
),主键是E#
DRIVER
( E#, L#
),主键是E#
引用EMPLOYEE
TRIP
( T#, L#
),主键为T#
,外键L#
引用DRIVER
TRIPPT
( T#, PT#
)主键是T#
引用的TRIP
我创建了一个函数,该函数查找驱动程序执行的最长点的长度(pt#的总数)
到目前为止我的查询:
create or replace function LONGPT (DL# in TRIP.L#%type)
return TRIPPT.PT#%type
IS
TRIPPT# TRIPPT.PT#%type;
begin
select max (PT#)
into TRIPPT#
from TRIPPT
where T# in (select T#
from TRIP
where L# = DL#);
return nvl (TRIPPT#, 0);
end LONGPT;
如何执行选择查询以显示员工的NAME
LONGPT。 在查询中也需要不执行任何跳闸点的驱动程序名称。
我努力了:
SELECT DRIVER.L# AS License_No, LONGTPT(TRIP.L#) AS "LONGEST POINT"
FROM DRIVER
LEFT OUTER JOIN TRIP on DRIVER.L# = TRIP.L#;
这仅查询L#和最长点。
谁能指导我如何在雇员姓名和我的函数LONGPT上显示select语句。
这是我设法弄清楚的工作查询。
SELECT DISTINCT EMPLOYEE.NAME, LONGPT(TRIP.L#) AS "LONGEST Point"
FROM DRIVER Join EMPLOYEE ON DRIVER.E# = EMPLOYEE.E# LEFT OUTER JOIN
TRIP on DRIVER.L# = TRIP.L#;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.