使用此查询:
SELECT id FROM org.employees WHERE {some_condition}
对于上述查询中的每一行,我需要调用:
SELECT * FROM org.work_schedule(@employeeId, @fromDate, @toDate)
其中org.work_schedule
是表值函数,它处理所有员工的可用工作计划和约束并返回两个 DATETIME(开始,结束)列,表示给定员工在提供的日期范围内的可用性。
我正在考虑在第一个查询上使用游标并提供将返回的临时表。这是唯一的解决方案吗?
该项目使用 C#,我也可以直接在 C# 中完成此操作,但我怀疑完全在 SQL (SQL Server 2008) 中执行此操作会更理想。
这似乎是本地化的,我会概括这个问题:
如何为另一个查询 (SELECT) 返回的每一行执行查询 (SELECT) 并在一次调用中返回整个结果(动态执行 SELECT UNION SELECT UNION ...)?
谢谢