A more terse view of the problem:
orientdb {db=Corganizations}> select @rid, $path from (traverse
in(member_of) from (traverse out(member_of) from #51:24 while $depth <= 1))
where @class instanceof 'Organization'
----+------+-------+-----------------------
# |@CLASS|rid |$path
----+------+-------+-----------------------
0 |null |#22:12 |(#22:12)
1 |null |#22:33 |(#22:12).in[0](#22:33)
2 |null |#22:100|(#22:12).in[1](#22:100)
3 |null |#22:137|(#22:12).in[2](#22:137)
4 |null |#22:171|(#22:12).in[3](#22:171)
5 |null |#22:177|(#22:12).in[4](#22:177)
----+------+-------+-----------------------
6 item(s) found. Query executed in 0.01 sec(s).
orientdb {db=Corganizations}> select @rid, $path from (traverse out(owns)
from (select from (traverse in(member_of) from (traverse out(member_of)
from #51:24 while $depth <= 1)) where @class instanceof 'Organization')
while $depth <= 1) where @class instanceof 'Organization'
----+------+-------+-----------------------
# |@CLASS|rid |$path
----+------+-------+-----------------------
0 |null |#22:12 |(#22:12)
1 |null |#22:10 |(#22:12).out[0](#22:10)
2 |null |#22:33 |(#22:33)
3 |null |#22:100|(#22:100)
4 |null |#22:137|(#22:137)
5 |null |#22:171|(#22:171)
6 |null |#22:177|(#22:177)
----+------+-------+-----------------------
7 item(s) found. Query executed in 0.107 sec(s).
My question boils down to, why does record # 1 show up in the second query?
The out(owns) relationship should not expand an out(member_of), which is
the relationship between #22:12 and #22:10.
Tj
On Monday, September 14, 2015 at 1:51:24 PM UTC-5, bougyman wrote:
>
> I am missing something in trying to construct a query with subqueries.
> Building in small iterations, I have a query which returns the proper
> result for 'Organizations a user is a member of, and Organizations that are
> members of that Organization'
>
>
> User -> Member Of -> Organization
> Organization -> Member Of -> Organization
>
> this query is:
>
> select from (traverse in(member_of) from (traverse out(member_of) from
> #51:24 while $depth <= 1)) where @class instanceof 'Organization'
>
> Now I want to add 'all things owned by the organizations in this set', so
> I try:
>
> select from (traverse out(owns) from (select from (traverse in(member_of)
> from (traverse out(member_of) from #51:24 while $depth <= 1)) where @class
> instanceof 'Organization') while $depth <= 1)
>
> This is where it falls apart. Adding the out(owns) traversal somehow
> expands the set of Organizations to include organizations not returned by
> the subquery. This is easily visible with the result set of the first query
> versus the second query (adding a where for @class instanceof Organization
> to the second)
>
> orientdb {db=Corganizations}> select from (traverse in(member_of) from
> (traverse out(member_of) from #51:24 while $depth <= 1)) where @class
> instanceof 'Organization'
>
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
> # |@RID |@CLASS |lft |rgt |state|zip |city |rental|country|status
> |onshore|beast_id|category|oilfield|red_days|offshore|parent_id|show_data|short_key|address2
>
> |out_owns |delete_fl|yellow_da|default_u|remote_na|show_asse|phone
>
> |show_devi|abbreviat|reference|in_member|contact_e|show_comm|asset_id_|show_disp|out_membe|contact_n|asset_typ|show_help|billing_s|map_base_|default_l|show_disp|asset_nam|show_flee|timezone
>
> |show_basi|show_shel|show_main|share_com|map_overl|show_qual|show_eng_|show_cust|auto_acce|rfid_time|allow_ass|show_filt|last_seen|allow_map|filter_pr|user_time|show_adva|enable_fi|show_unas|rental_da|allow_edi|last_seen|remote_ac|show_last|image
>
>
>
> |show_map_|asset_pro|created_a|logout_ur|share_ass|history_d|rental_sy|address1
>
> |name
> |share_not|show_last|remote_ac|default_m|remote_ac|remote_ac|show_last|allow_mul|remote_ac|history_d|autocreat|integrati|descripti
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
> 0 |#22:12 |Organi...|12 |25 |TX |75039|Irving|false |USA |enable
> |false |6 |2 |false |14 |false |1 |false |
> |Suite ...|[size=59]|0 |28 |/map | |true
> |972-76...|true |GF | |[size=8] | |false |
> |false |[size=1] | |1,2 |true |non bi...|
> |en |false | |false |Americ...|false |false |true
> |true | |false |false |false |false |4.0
> |true |true |21 |false | |15 |false
> |true |true | |false |10 | |false
> |6_Geof...|true |--- []
> |2008-0...|https:...|false |7 | |222
> We...|Geofor...|false |false | |false | |
> |false |false | |1 |false |false |Ops po...
> 1 |#22:33 |Organi...|15 |16 | | | |null |
> |disable|null |43 |1 |false |14 |null |6
> |false |null | |null |1 |28 |/map
> |null |true | |true |TEST ACC | |null |
> |false |null |null |[size=1] |Brando...|1,2 |true
> |non bi...|null |null |null |null |null
> |Americ...|false |false |false |false |null |false
> |false |false |true |4.0 |true |true |21
> |null |null |0 |false |true |false |null
> |false |10 |null |false |null |false |--- []
>
> |2008-1...|null |false |null |null | |test
> a...|false |null |null |false |null |null |false
> |false |null |null |null |null |test
> 2 |#22:100|Organi...|17 |18 | | | |null |
> |disable|null |117 |1 |false |14 |null |6
> |false |null | |[size=4] |1 |28 |/map |
> |true | |true |GF-SAL | |null |
> |false | |null |[size=1] | |1,2 |true |non
> bi...|null |null |null | |null |Americ...|false
> |false |false |false |null |false |false |false
> |false |4.0 |true |true |21 |null | |10
> |false |true |false |null |false |10 |null
> |false |null |false |--- []
>
> |2009-0...| |false |null |null |
> |Geofor...|false |null |null |false |null |null
> |false |false |null |null |null |null |
> 3 |#22:137|Organi...|19 |20 | | | |false | |enable
> |false |166 |1 |false |14 |false |6 |false |
> | |[size=1] |0 |28 |/map | |true
> | |true |GFINV-NEW| |null | |false |
> |false |[size=1] | |1,2 |true |billing |
> |en |false | |false |Americ...|false |false
> |false |false |null |false |false |false |false |4.0
> |true |true |21 |false | |0 |false
> |true |false | |false |10 | |false
> |null |false |--- []
> |2009-0...| |false |7 | |
> |Geofor...|false |false | |false | |
> |false |false | |1 |false |false |
> 4 |#22:171|Organi...|21 |22 | | | |null |
> |disable|null |207 |1 |false |14 |null |6
> |false |null | |[size=5] |0 |28 |/map |
> |true | |true |GF-XFER | |null |
> |false | |null |[size=1] | |1,2 |true
> |billing |null |null |null | |null
> |Americ...|false |false |false |false |null |false
> |false |false |false |4.0 |true |true |21
> |null | |0 |false |true |false |null
> |false |10 |null |false |null |true |--- []
>
> |2009-0...| |false |null |null |
> |Geofor...|false |null |null |false |null |null
> |false |false |null |null |null |null |
> 5 |#22:177|Organi...|23 |24 | | | |false | |enable
> |false |213 |1 |false |14 |false |6 |false |
> | |[size=...|0 |28 |/map | |true
> | |true |GF-TEST | |[size=2] | |true |
> |false |[size=1] | |1,2 |true |billing |
> |en |false | |false |Americ...|false |false |true
> |true |null |false |false |false |true |4.0
> |true |true |21 |false | |0 |true
> |true |false | |true |10 | |true |null
> |true |--- []
> |2009-0...| |true |7 | |
> |Geofor...|false |false | |false | | |true
> |false | |1 |false |false |
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
>
> 6 item(s) found. Query executed in 0.029 sec(s).
>
> Versus
>
> orientdb {db=Corganizations}> select from (traverse out(owns) from (select
> from (traverse in(member_of) from (traverse out(member_of) from #51:24
> while $depth <= 1)) where @class instanceof 'Organization') while $depth <=
> 1) where @class instanceof 'Organization'
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
>
>
> # |@RID |@CLASS |lft |rgt |state|zip |city |rental|country|status
> |onshore|beast_id|category|oilfield|red_days|offshore|parent_id|show_data|short_key|address2
>
> |out_owns |delete_fl|yellow_da|default_u|remote_na|show_asse|phone
> |show_devi|abbreviat|reference|in_member|fax
>
> |show_comm|asset_id_|show_disp|out_membe|contact_n|asset_typ|show_help|billing_s|map_base_|default_l|show_disp|asset_nam|show_flee|timezone
>
> |contact_e|show_basi|show_shel|show_main|share_com|map_overl|show_qual|show_eng_|show_cust|auto_acce|rfid_time|allow_ass|show_filt|last_seen|allow_map|filter_pr|user_time|show_adva|enable_fi|show_unas|rental_da|allow_edi|last_seen|remote_ac|show_last|image
>
>
>
> |show_map_|asset_pro|created_a|logout_ur|share_ass|history_d|rental_sy|updated_a|address1
>
> |name
> |share_not|show_last|remote_ac|default_m|remote_ac|remote_ac|show_last|allow_mul|remote_ac|history_d|autocreat|integrati|descripti
>
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
>
>
> 0 |#22:12 |Organi...|12 |25 |TX |75039|Irving|false |USA |enable
> |false |6 |2 |false |14 |false |1 |false |
> |Suite ...|[size=59]|0 |28 |/map | |true
> |972-76...|true |GF | |[size=8] |null |false |
> |false |[size=1] | |1,2 |true |non bi...|
> |en |false | |false |Americ...| |false
> |false |true |true | |false |false |false
> |false |4.0 |true |true |21 |false | |15
> |false |true |true | |false |10 |
> |false |6_Geof...|true |--- []
> |2008-0...|https:...|false |7 | |null |222
> We...|Geofor...|false |false | |false | |
> |false |false | |1 |false |false |Ops po...
> 1 |#22:10 |Organi...|1 |6432|ca |12345|ns |false |us |enable
> |false |1 |2 |false |14 |false |0 |true |
> |canada |[size=1] |0 |28 |/map | |true
> |123-45...|true |SYSROOT | |[size=...|123-45...|false
> |null |false |null |Georg |1,2 |true |billing |
> |en |true |null |true |US/Cen...|ramsay...|false
> |false |false |false |null |false |false |true
> |false |4.0 |true |true |21 |false | |0
> |false |true |false | |false |10 |
> |false |null |false |--- []
> |2008-0...|https:...|false |7 | |2008-0...|ns
> |System...|false |false | |false | |
> |false |false | |1 |false |false |Root A...
> 2 |#22:33 |Organi...|15 |16 | | | |null |
> |disable|null |43 |1 |false |14 |null |6
> |false |null | |null |1 |28 |/map
> |null |true | |true |TEST ACC | |null |null
> |false |null |null |[size=1] |Brando...|1,2 |true
> |non bi...|null |null |null |null |null |Americ...|
> |false |false |false |false |null |false |false
> |false |true |4.0 |true |true |21 |null
> |null |0 |false |true |false |null |false |10
> |null |false |null |false |--- []
>
> |2008-1...|null |false |null |null |null |
> |test a...|false |null |null |false |null |null
> |false |false |null |null |null |null |test
> 3 |#22:100|Organi...|17 |18 | | | |null |
> |disable|null |117 |1 |false |14 |null |6
> |false |null | |[size=4] |1 |28 |/map |
> |true | |true |GF-SAL | |null |null
> |false | |null |[size=1] | |1,2 |true |non
> bi...|null |null |null | |null |Americ...|
> |false |false |false |false |null |false |false
> |false |false |4.0 |true |true |21 |null |
> |10 |false |true |false |null |false |10
> |null |false |null |false |--- []
>
> |2009-0...| |false |null |null |null |
> |Geofor...|false |null |null |false |null |null
> |false |false |null |null |null |null |
> 4 |#22:137|Organi...|19 |20 | | | |false | |enable
> |false |166 |1 |false |14 |false |6 |false |
> | |[size=1] |0 |28 |/map | |true
> | |true |GFINV-NEW| |null |null |false |
> |false |[size=1] | |1,2 |true |billing |
> |en |false | |false |Americ...| |false
> |false |false |false |null |false |false |false
> |false |4.0 |true |true |21 |false | |0
> |false |true |false | |false |10 |
> |false |null |false |--- []
> |2009-0...| |false |7 | |null |
> |Geofor...|false |false | |false | |
> |false |false | |1 |false |false |
> 5 |#22:171|Organi...|21 |22 | | | |null |
> |disable|null |207 |1 |false |14 |null |6
> |false |null | |[size=5] |0 |28 |/map |
> |true | |true |GF-XFER | |null |null
> |false | |null |[size=1] | |1,2 |true
> |billing |null |null |null | |null |Americ...|
> |false |false |false |false |null |false |false
> |false |false |4.0 |true |true |21 |null |
> |0 |false |true |false |null |false |10
> |null |false |null |true |--- []
>
> |2009-0...| |false |null |null |null |
> |Geofor...|false |null |null |false |null |null
> |false |false |null |null |null |null |
> 6 |#22:177|Organi...|23 |24 | | | |false | |enable
> |false |213 |1 |false |14 |false |6 |false |
> | |[size=...|0 |28 |/map | |true
> | |true |GF-TEST | |[size=2] |null |true |
> |false |[size=1] | |1,2 |true |billing |
> |en |false | |false |Americ...| |false
> |false |true |true |null |false |false |false
> |true |4.0 |true |true |21 |false | |0
> |true |true |false | |true |10 |
> |true |null |true |--- []
> |2009-0...| |true |7 | |null |
> |Geofor...|false |false | |false | | |true
> |false | |1 |false |false |
>
> ----+-------+---------+----+----+-----+-----+------+------+-------+-------+-------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------
>
> 7 item(s) found. Query executed in 0.022 sec(s).
>
> Note that #22:10, the Organization that doesn't belong in the second set,
> has an in(member_of) edge from #22:12 (which has an in(member_of) from
> #51:24, but that shouldn't expand from doing an out(owns) traversal on the
> set of 6 organizations returned by in inner subquery, unless I'm completely
> misunderstanding how subqueries work. An explanation of my failure would be
> greatly appreciated.
>
> bougyman
>
>
>
--
---
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.