Orientdb-如何使用Edge属性筛选匹配
看比赛Orientdb-如何使用Edge属性筛选匹配,orientdb,Orientdb,看比赛 SELECT PSQ_psq_nome AS nome, INS_ins_nome AS instituicao, COUNT(PUB_pub_id) AS qtdpub, * FROM ( MATCH {class:Pais, as:PAI, where:(pai_id=1)} <-NASCEU- {class:Pesquisador, as:PSQ} -PUBLICOU-> {class:Publicacao, as:PUB, where
SELECT PSQ_psq_nome AS nome, INS_ins_nome AS instituicao, COUNT(PUB_pub_id) AS qtdpub, * FROM (
MATCH
{class:Pais, as:PAI, where:(pai_id=1)} <-NASCEU- {class:Pesquisador, as:PSQ} -PUBLICOU-> {class:Publicacao, as:PUB, where: (pub_data_publicacao_int > 20141231)},
{as:PSQ} -ATUOU-> {class:Instituicao, as:INS}
RETURN PSQ.psq_nome AS nome, INS.ins_nome AS instituicao, PUB.pub_id, PUBLICOU.ordem )
GROUP BY PSQ_psq_nome, INS_ins_nome
ORDER BY qtdpub DESC, nome
选择PSQ\U PSQ\U nome作为nome,INS\U INS\U nome作为instituicao,计数(发布id)作为qtdpub,*FROM(
匹配
{class:Pais,as:PAI,其中:(PAI_id=1)}{class:publicao,as:PUB,其中:(PUB_data_publicao_int>20141231)},
{as:PSQ}-ATUOU->{class:Instituicao,as:INS}
返回PSQ.PSQ_nome作为nome,INS.INS_nome作为instituico,PUB.PUB_id,PUBLICOU.ordem)
按PSQ_PSQ_nome、INS_INS_nome分组
按qtdpub DESC,nome订购
我需要使用属性ordem,类型integer,作为边缘PUBLICOU。可能吗
比如(见PUBLICOU)
选择PSQ\U PSQ\U nome作为nome,INS\U INS\U nome作为instituicao,计数(发布id)作为qtdpub,*FROM(
匹配
{class:Pais,as:PAI,其中:(PAI_id=1)}{class:publicao,as:PUB,其中:(PUB_data_publicao_int>20141231)},
{as:PSQ}-ATUOU->{class:Instituicao,as:INS}
返回PSQ.PSQ_nome作为nome,INS.INS_nome作为instituico,PUB.PUB_id,PUBLICOU.ordem)
按PSQ_PSQ_nome、INS_INS_nome分组
按qtdpub DESC,nome订购
当然可以,但不能使用箭头符号,例如,必须更换
{class:Pesquisador, as:PSQ} -PUBLICOU-> {class:Publicacao ...}
与
您还可以为边缘指定别名,并在结果集中返回它(如果愿意)Hi,您可以发布您的模式吗?谢谢
{class:Pesquisador, as:PSQ} -PUBLICOU-> {class:Publicacao ...}
{class:Pesquisador, as:PSQ} .outE("PUBLICOU"){where:(ordem = 1)}.inV() {class:Publicacao ...}