You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Veeva查询语言(VQL)中获取唯一的Product Family记录?

VQL获取关联内容计划的唯一产品系列方法

解决子查询报错问题

你之前的子查询报错是因为关联字段写法不符合Veeva Vault的VQL规则,关联对象的引用字段需要用[关联对象名]__vr.id格式,而非直接写对象名。修正后的子查询语句如下:

SELECT id, name__v, status__v FROM product__v 
WHERE id IN (SELECT product__vr.id FROM edl__v WHERE parent__v IS NULL)

替代SQL DISTINCT的两种方案

方案1:GROUP BY聚合

利用GROUP BY对产品系列的唯一标识及所需字段进行聚合,确保每个产品系列仅返回一条记录:

SELECT product__vr.id, product__vr.name__v, product__vr.status__v 
FROM edl__v 
WHERE parent__v IS NULL AND product__vr.name__v IS NOT NULL
GROUP BY product__vr.id, product__vr.name__v, product__vr.status__v

Vault的VQL允许GROUP BY包含非聚合字段,只要这些字段与GROUP BY的主键一一对应,刚好适配产品系列字段的唯一性需求。

方案2:EXISTS子查询

通过EXISTS子查询直接过滤出至少关联一个内容计划的产品系列,结果天然唯一:

SELECT id, name__v, status__v 
FROM product__v 
WHERE EXISTS (
    SELECT id FROM edl__v 
    WHERE edl__v.product__vr.id = product__v.id 
    AND edl__v.parent__v IS NULL
)

额外说明

如果你的Vault版本较新,可以直接尝试使用DISTINCT关键字(部分新版本VQL已支持该语法):

SELECT DISTINCT product__vr.id, product__vr.name__v, product__vr.status__v 
FROM edl__v 
WHERE parent__v IS NULL AND product__vr.name__v IS NOT NULL

内容的提问来源于stack exchange,提问作者Arvind Agrahari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 04:52:34