Ok, sorry, I misunderstood your original intent.  I didn't realize that 
person.id=post.id.

create edge doesn't take a where clause so that won't work.

You can almost do it with update like so:
update person add out_Wrote=( select from post where id = $parent.current.id 
)
update car add in_Wrote=( select from person where id = $parent.current.id )
# Cleanup the empty collections
update person remove out_Wrote where out_Wrote.size() = 0
update car remove in_Wrote where in_Wrote.size() = 0

but that stores the edge as the wrong type even though graph functions seem 
to work fine...  this is also implementation specific and things probably 
break down if your edges have properties... or if the implementation 
changes over time... and it may not even be efficient.

Your only choice may be to do it programmatically in a loop using one of 
the apis... or create a js script and run it using the js or jss console 
commands...

#Note that function definition defaults to sql so you have to specify 
javascript
create function test "somejavascript" LANGUAGE javascript
select test()

The select statement will print a bogus empty record but it does execute 
your javascript.  functions are stored in the class OFunction so you can 
manage them using SQL
select from OFunction
delete from OFunction
etc.

Your javascript can include loops and access the database.  Check the wiki 
documentation.

On Wednesday, August 27, 2014 2:34:30 AM UTC-4, Curtis Mosters wrote:
>
> But image one million entries. So I need a for loop in SQL. Looking for an 
> id in Person and then doing this statement above. Is that possible?
>
> Edit: Also tried 
> create edge Wrote let $a = 1 from ( select from person where id = $a ) to 
> ( select from post where id = $a )
>
> but does not work. In that way I could do another SELECT on Person. But 
> yeah it does not work =/
>
>
>
> Am Dienstag, 26. August 2014 23:33:41 UTC+2 schrieb odbuser:
>>
>> Alex is right.  Just replace personID and postID with actual values (and 
>> use an appropriate link name).
>>
>> In your example:
>>
>> create edge hasPost from ( select from person where id = 1 ) to ( select 
>> from post where id = 1 )
>>
>>
>>

-- 

--- 
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.

Reply via email to