我想在Buy1和Item346的交集之外创建一个新列表(c2(Buy1:[项目12、项目23、项目7、项目562、项目346、项目85]
我要返回的列表(vsm表示(c2:[0,0,0,0,1,0]
如果你真的想要0表示值不相等,1表示值相等,你可以使用CASE的列表提取来处理输出:
WITH ['Item 12', "Item 23", "Item 7", "Item 562", "Item 346", "Item 85"] as buy1, "Item 346" as item
RETURN [i in buy1 | CASE WHEN i = item THEN 1 ELSE 0 END] as output
编辑:如果您的输入是项目列表,而不仅仅是单个项目,那么我们可以使用列表成员身份检查(使用IN
(来决定何时输出1:或0:
WITH ['Item 12', "Item 23", "Item 7", "Item 562", "Item 346", "Item 85"] as buy1, ["Item 346", "Item 7"] as items
RETURN [i in buy1 | CASE WHEN i IN items THEN 1 ELSE 0 END] as output