Thanks,
I found out that in OrientStudio there is an option enabled by default
called 'shallow collection' which probably does that.
So don't forget to disable that option !
Could it be *dis*abled by default? I think that would be more intuitive...
Op woensdag 26 maart 2014 12:38:21 UTC+1 schreef MrFT:
>
> Hello,
>
> I have a question about querying 'hierarchical' data in a graph.
>
> Let's assume I have a Person( name ) class, an EdgeClass 'owns', and a
> Bicycle( color, type ) class.
> Let's assume than John owns 2 bicycles: ( 'red', 'mountain bike' ) and (
> 'blue', 'recumbent bicycle' )
>
> I found out about the expand function, so in order to get a person with
> the 2 types of bicycles, I could query:
>
> select name,
> outE()[ @class = 'owns' ].inV().type as bicycletypes
> from Person
>
> And if I do
> select name,
> outE()[ @class = 'owns' ].inV().type as bicycletypes
> from Person
>
> I get something like:
> {
> "result": [
> {
> "@type": "d",
> "@rid": "#-2:1",
> "@version": 0,
> "name": "John",
> "bicycletypes": [ 2 ]
> }
> ],
> "notification": "Query executed in 0.03 sec. Returned 1 record(s)"
> }
>
> But I would like to have something like:
> {
> "result": [
> {
> "@type": "d",
> "@rid": "#-2:1",
> "@version": 0,
> "name": "John",
> * "bicycletypes": [ "recumbent bicycle", "mountain bike" ]*
> }
> ],
> "notification": "Query executed in 0.03 sec. Returned 1 record(s)"
> }
>
> And even better would be:
> {
> "result": [
> {
> "@type": "d",
> "@rid": "#-2:1",
> "@version": 0,
> "name": "John",
> * "bicycles": [ { "color": "red", "type": "recumbent bicycle"
> }, *
> *{ "color": "red", "type": **"mountain bike" } *
> * ]*
> }
> ],
> "notification": "Query executed in 0.03 sec. Returned 1 record(s)"
> }
>
> When I try to get a similar result, for example with the following query:
> select *{* "name": name, "bicycles": outE()[ @class = 'owns' ].inV() *}*as
> expandedperson
> from Person
> I get
> {"name":"_NOT_PARSED_","bicycles":"_NOT_PARSED_"}
>
> or something else I tried
> select *, expand( outE()[ @class = 'owns' ].inV() ) as bicycles
> from Person
>
> doesn't work either.
>
>
>
> *So, my question isn (if possible using OrientDB SQL queries)*
>
> - *can something like this be done in a single query, and if so, how?
> *(I guess not currently?)
> -
> *Are there plans to make such a thing possible in the future? I would
> really love to be able to do these things. Something similar to the
> highlighted syntax would rock :) *
> -
> *Are there 'workarounds' that I can use for now (with the least possible
> amount of queries)? *
>
>
> Thanks again for all your help getting me started.
>
>
>
--
---
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 [email protected].
For more options, visit https://groups.google.com/d/optout.