Sorry, the first query is

TRAVERSE in('scopedEdge') FROM (

  SELECT expand(in('scopeEdge'))

  FROM V WHERE file IS NOT NULL

)


2017-06-19 15:26 GMT+02:00 Luigi Dell'Aquila <luigi.dellaqu...@gmail.com>:

> Hi Erik,
>
> I'm afraid I don't completely understand your model:
> - how are the edges directed? From parent to child or from child to parent?
> - are File and Folder two different classes that extend V?
> - what does the "file" property represent? Is it a string or what?
>
>
> If I got it right, you have many alternatives to do this, one is as
> follows:
>
> TRAVERSE in('scopedEdge') FROM (
>
>   SELECT expand(in('scopeEdge')
>
> ) FROM V WHERE file IS NOT NULL
>
>
> or
>
>
> SELECT FROM V
>
> WHERE out("scopedEdge").size() > 0
>
>
> or
>
> MATCH
>
>  {class:File, where:(file is not null)} <-scopedEdge- {} <-scopedEdge- 
> {as:folder, while:(true)}
>
> RETURN $elements
>
>
> I hope it helps
>
> Thanks
>
> Luigi
>
>
> 2017-06-19 15:15 GMT+02:00 Erik T <erik.shi...@gmail.com>:
>
>> I have a tree with 5 vertices
>>
>>                                      Folder (a)
>>                                      /        \
>>                               (b) File      Folder (c)
>>                                                 /       \
>>                                          (d) File     Folder (e)
>>
>> I would like to retrieve the folders that contain a file. So I want to
>> get back (a) and (c) from my query. The edges are lightweight edges and are
>> labeled 'scopeEdge'. I placed a property on the files in my tree and
>> labeled them 'file'. These queries don't work
>>
>> select out from V where file is not null --> gives back temporary vertices
>>
>> select from V where out('scopeEdge').file is not null --> gives back (a),
>> (b), (c), (d), and (e)
>>
>> I can get 1 query to work but its really complicated. It makes me think
>> I'm doing something wrong. Is there something easier than this?
>>
>> SELECT FROM (TRAVERSE in('scopedEdge') FROM (SELECT FROM #RID# WHERE file IS 
>> NOT NULL)) WHERE $depth > 0 --> gives back (a) and (c)
>>
>>
>>
>> --
>>
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "OrientDB" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to orient-database+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to orient-database+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to