'Use select' 符号指定 Exact Online 数据容器的多个分区

'Use select' notation to specify multiple partitions of Exact Online data container

我想要 select 数据中心中的活动分区。通常我会使用以下语句:

INVANTIVE> use 1552839
2>
Exclamation itgendhb077: Error in Invantive Data Hub.
Database '1552839' does not exist. Make sure that the name is entered correctly.

这给出了一个错误。我注意到当我为我的精确在线连接使用别名时它确实有效:

INVANTIVE> use 1552839@eol
2>
itgendhb018: 0 Rows Affected (111 ms)

但我想执行以下操作,select从 SQL table 中进行我想要的划分,但这行不通:

use select division_code from dc.rs.selected_admins@sql

另一种方法效果不佳:

INVANTIVE> use select code from systemdivisions@eol sd inner join dc.rs.selected_admins@sql sa on sd.code = sa.division_code
2>
Exclamation itgendhb077: Error in Invantive Data Hub.
Database '1552839' does not exist. Make sure that the name is entered correctly.

不指定别名时,根据"sortingorder"第一个连接的数据容器寻址。鉴于错误消息的类型,这可能是 SQL 服务器数据库。

假设您正在寻找一种方法来指定特定数据容器中的分区,最好的方法是使用:

use select code partitioncode, 'eol' datacontaineralias from ...

这与采用以下结果相同:

select 'use ' || lst from ( select listagg(code || '@' || eol') lst from ... )

并执行那个。

当然,当您连接了多个数据容器时,例如 Exact Online Belgium、Netherlands 以及 Loket 和 Nmbrs,您可以在一个 use 语句中提供它们。