Hi Markus,

it seems a regression in 2.1.2, could you please open an issue about this?

Thanks

Luigi

2015-09-18 9:57 GMT+02:00 Markus Ritter <[email protected]>:

> Hi @all,
>
> I have the following data structure:
>
> Client
>     -> users: List<User>
> User
>     -> emailAddresses: List<EmailAddress>
> EmailAddress:
>     -> email: String
>
> Now I want to detect, if an email address is already included in a client
> if I add a new user to the client (e.g. client contains user 1 and user 2,
> user 1 contains email "[email protected]", user 2 contains "[email protected]", if
> I want to add user 3 containing also email "[email protected]" I want to
> reject in my code).
> So far I realized my query this way (#18:2 is a client, #12:1 is the new
> user to add, I just expand all existing email addresses from the client and
> want to get the union to all new users email addresses):
>
> SELECT expand($c) LET $a = (SELECT expand(emailAddresses) FROM (SELECT
> expand(users) FROM #18:2)), $b = (SELECT expand(emailAddresses) FROM
> #12:1), $c = unionall($a, $b)
>
> What I need is distinct($a, $b) or intersect, but both doesn´t work (at
> least in OrientDB 2.1.2) -> distinct() only allows for 1 field, intersect()
> throws:
>
> java.lang.ClassCastException:
> com.orientechnologies.orient.core.sql.query.OResultSet cannot be cast to
> com.orientechnologies.common.util.OSupportsContains
>
> So my question is: Is there an easier way to achieve such a check (also
> regarding performance of the query, because there might be a lot of users
> with email addresses per client) or do I face a bug of OrientDB or are
> there any other possible ways?
>
> Thanks for you help!
>
>
> --
>
> ---
> 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.
>

-- 

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