我正在使用 Invantive SQL 在 nmbrs.nl 上创建一份病假报告。
默认情况下,此查询检索所有公司的数据:
select *
from employees emp
join employeeabsence(emp.id)
这需要大量时间,因为每个公司都完成了一个 SOAP 请求,加上每个员工一个 SOAP 请求来检索缺勤。
有没有一种有效的方法将其限制在少数公司而不是数千家公司?
我正在使用 Invantive SQL 在 nmbrs.nl 上创建一份病假报告。
默认情况下,此查询检索所有公司的数据:
select *
from employees emp
join employeeabsence(emp.id)
这需要大量时间,因为每个公司都完成了一个 SOAP 请求,加上每个员工一个 SOAP 请求来检索缺勤。
有没有一种有效的方法将其限制在少数公司而不是数千家公司?
您可以使用“使用”语句或选择实际上是公司的分区。
use
您可以使用如下查询:
use select code from systempartitions@datadictionary where lower(name) like '%companyname%' limit 10
检索具有特定名称的前 10 家公司。
另请参阅使用别名的答案,了解如何在运行分布式查询时指定数据容器别名。