我有一张员工名单,我想得到本月前三名员工。
我有一个存储过程,它接受员工ID并返回一个数字,指示员工的工作质量。
我希望能找到这样的东西:
SELECT top (3) name
FROM employee
order by sp_emplyeePerformance employee.ID -- of course this doesn't work这样的事有可能吗?或者应该创建一个具有员工名称和性能的临时表,然后查询临时表。
发布于 2014-03-29 21:25:56
您可能正在寻找一个用户定义函数而不是存储的Proc。该UDF将接受雇员的ID作为参数,并返回一个值(员工的分数),因此您可以根据它进行排序。
例子:
CREATE FUNCTION dbo.fnEmployee_score (@employeeId INT)
RETURNS INT
AS
BEGIN
-- Your logic
RETURN @score;
END发布于 2014-03-29 21:27:56
不能从SELECT查询执行存储过程。
你的选择是:
employee的计算。https://stackoverflow.com/questions/22737044
复制相似问题