So I'm trying to figure an approach to my previous reply and I hit another
problem. As soon as I give my edge a property, the query that I'm using
stops working and won't return anything that has properties, seems that the
in/out is now with the edge and not between the labels and that of course
affects the result greatly.
Before I add the property, the result is 3 records after I add the
properties to my edge, it's only one record. When I do select from label,
I see that "in_translateTo" is another class.
How can I rewrite this query to get the proper 3 records?
Please use setup below to reproduce.
*Query*
=====
Select from (traverse out('translatesTo') from (select from Label where
name = 'Hello')) where out('is').name contains 'Fr-fr'
*setup*
===========================================================
#drop database if already exists
drop database remote:/locahost/touca root pass;
#create touca database
create database remote:localhost/touca root pass local;
#create classes/Vectors
create class User extends V;
create class Language extends V;
create class Label extends V;
#create Links/Edges
create class speaks extends E;
create class is extends E;
create class translatesTo extends E;
#create User Data
create vertex User set name = 'Luca';
create vertex User set name = 'Joe';
#create Language Data
create vertex Language set name = 'En-uk';
create vertex Language set name = 'En-us';
create vertex Language set name = 'Fr-fr';
create vertex Language set name = 'Ru-ru';
create vertex Language set name = 'Ar-sy';
#create Label Data
create vertex Label set name = 'Hello';
create vertex Label set name = 'Salut';
create vertex Label set name = 'Ciao';
create vertex Label set name = 'Good day';
create vertex Label set name = 'Bonjour';
create vertex Label set name = 'Hallo';
create vertex Label set name = 'Marhaba';
#index
create property speaks.out LINK;
create property speaks.in LINK;
CREATE INDEX unique_speaks ON speaks (in, out) UNIQUE;
#create property translatesTo.out LINK;
#create property translatesTo.in LINK;
#CREATE INDEX unique_translatesTo ON translatesTo (in, out) UNIQUE;
#create the links between the User->Language
create edge speaks from (select from User where name = 'Luca') to (select
from Language where name = 'En-uk');
create edge speaks from (select from User where name = 'Luca') to (select
from Language where name = 'En-us');
create edge speaks from (select from User where name = 'Luca') to (select
from Language where name = 'Fr-fr');
create edge speaks from (select from User where name = 'Luca') to (select
from Language where name = 'Ar-sy');
create edge speaks from (select from User where name = 'Joe') to (select
from Language where name = 'En-uk');
create edge speaks from (select from User where name = 'Joe') to (select
from Language where name = 'En-us');
#create the links between label and language
create edge is from (select from Label where name = 'Hello') to (select
from Language where name = 'En-uk');
create edge is from (select from Label where name = 'Hello') to (select
from Language where name = 'En-us');
create edge is from (select from Label where name = 'Salut') to (select
from Language where name = 'Fr-fr');
create edge is from (select from Label where name = 'Ciao') to (select from
Language where name = 'Fr-fr');
create edge is from (select from Label where name = 'Good day') to (select
from Language where name = 'En-uk');
create edge is from (select from Label where name = 'Bonjour') to (select
from Language where name = 'Fr-fr');
create edge is from (select from Label where name = 'Hallo') to (select
from Language where name = 'Ru-ru');
create edge is from (select from Label where name = 'Marhaba') to (select
from Language where name = 'Ar-sy');
#create the links between labels
create edge translatesTo from (select from Label where name = 'Hello') to
(select from Label where name = 'Good day');
create edge translatesTo from (select from Label where name = 'Hello') to
(select from Label where name = 'Hallo');
create edge translatesTo from (select from Label where name = 'Hello') to
(select from Label where name = 'Salut') SET ncount = 5;
create edge translatesTo from (select from Label where name = 'Hello') to
(select from Label where name = 'Ciao') SET ncount = 10;
create edge translatesTo from (select from Label where name = 'Good day')
to (select from Label where name = 'Bonjour');
create edge translatesTo from (select from Label where name = 'Bonjour') to
(select from Label where name = 'Marhaba');
create edge translatesTo from (select from Label where name = 'Hallo') to
(select from Label where name = 'Marhaba');
--
---
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/groups/opt_out.