我收到此错误:
错误1051:未知表'员工'
这是我的代码:
CREATE DEFINER=`u24290718`@`%` PROCEDURE `eval5_get_charter_details_by_pilot_date`(in fromdate DATE, todate DATE, pilotname VARCHAR(50))
BEGIN
if (pilotname = 'all')
THEN
SELECT aviaco.pilot.*, aviaco.employee.*
FROM aviaco.pilot
JOIN aviaco.employee AS emp on aviaco.pilot.EMP_NUM = aviaco.employee.EMP_NUM;
ELSE
SELECT aviaco.pilot.*, aviaco.employee.*
FROM aviaco.pilot
JOIN aviaco.employee AS emp on aviaco.pilot.EMP_NUM = aviaco.employee.EMP_NUM
WHERE aviaco.pilot.PIL_MED_DATE = fromdate & aviaco.pilot.PIL_PT135_DATE = todate;
END IF;
END
所以问题是我不断得到未知的表employee
。我在大学服务器上使用数据库,员工表就在那里!我不知道我做错了什么。
答案 0 :(得分:1)
我相信这是你的问题:
aviaco.employee AS emp
因此您的查询(而不是您的数据库)现在将employee
表格视为emp
。这意味着你应该指向它,例如(可能有更多的地方!),你不能这样做
SELECT aviaco.pilot.*, aviaco.employee.*
但应该
SELECT aviaco.pilot.*, emp.*
并且在联接中它应该是emp.EMP_NUM
等。