SuiteQL 不能包含关键字"DISTINCT"吗?



当我尝试将distinct关键字与SuiteQL一起使用时,我不断收到错误。

这是我的代码:

var bannedItemIdArr = [];
var querySQL = "SELECT DISTINCT item.ID AS idRAW /*{id#RAW}*/ FROM item, (SELECT itemMember.parentitem AS parentitem, itemMember.parentitem AS parentitem_join, itemMember.ID AS ID, item_0.itemtype AS itemtype, itemMember.item AS item, item_0.itemtype AS itemtype_crit, item_0.isinactive AS isinactive_crit FROM itemMember, item item_0 WHERE itemMember.item = item_0.ID(+)) itemMember_SUB WHERE item.ID = itemMember_SUB.parentitem(+) AND ((UPPER(item.itemtype) IN ('ASSEMBLY') AND UPPER(itemMember_SUB.itemtype_crit) IN ('INVTPART', 'ASSEMBLY') AND itemMember_SUB.isinactive_crit = 'T' AND NVL(item.isinactive, 'F') = 'F'))";
var myPagedResults = query.runSuiteQLPaged({ query: querySQL, pageSize: 1000, });

错误:

出现搜索错误:搜索无效或不受支持

如何解决此错误?

所以这里的技巧是使用group by而不是distinct

例如

select item.id
from item
group by item.id

也就是说,您的查询看起来像是在使用旧的oracle特定的连接语法(使用(+((,而不是left joinright join的套件ql支持的ANSI92语法。此外,您必须更改nvl才能使用ANSI92coalesce

查看查询了吗。聚合

枚举描述 模块
保存N/query模块支持的聚合函数的字符串值。聚合函数对列或条件值执行计算并返回单个值。此枚举中的每个值(MEDIAN除外(都有两种变体:distinct(使用_distinct后缀(和nondiscinct(不使用后缀(。变体确定聚合函数是对重复值的所有实例进行操作,还是仅对值的单个实例进行操作。例如,考虑使用MAXIMUM聚合函数来确定一组值的最大值的情况。当使用不同的变量(MAXIMUM_distinct(时,聚合函数会考虑重复值的每个实例。因此,如果值集包括三个不同的值,它们都相等,并且都表示该集中的最大值,那么聚合函数会列出所有三个实例。使用非连续变量(MAXIMUM(时,无论该最大值在集合中的实例数量如何,都只列出该最大值的一个实例。此枚举用于将聚合函数参数传递给Component.createColumn(options(、Component.createCondition(options

最新更新