请问如何表示查询多种类型的边?

对于outdegree,以下写法都显示有误:
s.outdegree(“m_Clas|m_Cont|m_Root|m_clas|m_cont|m_dClas|m_dCont”);
s.outdegree(“m_Clas”|“m_Cont”|“m_Root”|“m_clas”|“m_cont”|“m_dClas”|“m_dCont”);
s.outdegree((“m_Clas”)|(“m_Cont”)|(“m_Root”)|(“m_clas”)|(“m_cont”)|(“m_dClas”)|(“m_dCont”));

请问如何正确表示?谢谢

您试下下面的代码:

s.outdegree("m_Clas") + s.outdegree("m_Cont") + s.outdegree("m_Root") + s.outdegree("m_clas") + s.outdegree("m_cont") + s.outdegree("m_dClas") + s.outdegree("m_dCont")

看看是否能解决您的问题。

好,解决了。
顺便问下:能否设置不自动去重?有些边类型一样但属性不一样,tiger自动去重了。而因为业务需要,同时存在同类型不同属性的边,而且又不方便将两条边合一起。所以不好直接自动去重,或者类型和属性都完全一样的边才自动去重。

之所以去重,是因为主键相同了。
从Schema设计的时候,我们应该把每个顶点客户视为一类实体,既然是实体,就有唯一标记这类实体的主键,比如“人”这个实体就可以用身份证号唯一标识出来。
所以当遇到相同主键、属性不同的数据时,就会取最新的一条覆盖前一条。只有这样才能保证同一主键的数据唯一。
如果您遇到的情况是这样,主键为A,属性字段为B,您想要A+B唯一,那么您可以考虑把A+B作为一个联合主键,重新设计Schema。

您说的是顶点主键吧,边貌似没有主键?有的话,如何建立边的联合主键呢?
不过,目测还是会出现主键重复而去重的情况,即使是联合主键,还是会有很多相同的联合主键,因为边类型和属性类型也就那几个。我觉得还是要区分属性值才行。
这也许是因为tiger没有自增主键吧?用顶点字段做主键,也许会出现一些麻烦,比如上面说的。有自增主键的话就不受任何字段影响了,也许tiger可以考虑一下?

如果是边的话,主键就是连接的两个顶点的主键的组合。比如“交易”边连接上了“买方”和“卖方”两个顶点,那么“交易”边的主键就是“买方”主键+“卖方”主键。所以两个顶点之间的同类型边最多只有一条。
如果您想要表述两个顶点之间多条边的场景,可以把边转化为顶点,像以上的例子,可以把“交易”也设计为一个顶点,这样,“买方”连着“交易”,“交易”再连着“卖方”,就可以实现买方和卖方有多笔交易的情况了。
自增主键您可以在数据预处理时生成,然后再导入到TigerGraph中。