Sure.
We developed billing and engagement application using Java.
*Overview of our Structure:*
customer (v) - mobile, name, customer_id, email_id, location, created_date,
etc...
billing(v) - invoice_no, created_date, gross_value, is_deleted, etc..
activity(v) - created_date, is_deleted, etc..
store (v) - name, location, created_date, etc..
store_customer (E) - is_active, created_date (This edge connected to
the customer)
customer have edge of the above vertexes (billing, activity, like this)
*Usecase of my scenario,*
- I need to get all customer by a particular store and get each
customer last visited date, total visited count, total gross value like
this finally order by customer created date.
- some of my merchant want to search particular customer by name,
email_id, location, mobile_no, these case how to use compoiste index with
or condition.
*Below my Query, this query taken 15 sec*
select from (select $member[0].member_count as memberList, $value[0].total
as customerValue, $a[0].created_date as last_visited_date, created_date,
in.gender as gender,in.customer_unique_id as customer_unique_id,
send_promotional, send_transaction, in as rid, in as customer_id,in.name as
name,in.mobile_no as mobile_no,in.email_id as email_id,in.dob
as dob,in.anniversary_date as anniversary_date,in.location as location,
in.out('customer_has_activity')['is_deleted = false']['store_id =
#48:1752'].size() as visited_count from (traverse out_store_customer from
#48:1752 ) where out = #48:1752 and in.is_deleted = false and is_active =
true and (in.mobile_no.toUpperCase() like '%%' or in.email_id.toUpperCase()
like '%%' or in.customer_unique_id.toUpperCase() like '%%' or
in.name.toUpperCase() like '%%') LET $a = (select from (select
expand(out('customer_has_activity')['is_deleted = false']['store_id =
#48:1752']) from $parent.$current.in) order by created_date desc skip 0
limit 1), $value = (select sum(gross_value) as total from (select
expand(out('customer_has_billing')['is_deleted = false']['is_cancel =
false']) from #260:86891) where in('store_has_billing') in (#48:1752)),
$member = (select count(1) as member_count from (select
expand(out('customer_has_membership')['is_deleted=false']['storeid =
#48:1752']) from $parent.$current.in) where expiry_date is null
or sysdate() < expiry_date)) order by created_date desc skip 0 limit 11
Please do favour.
Thanks in Advance.
On Thursday, May 18, 2017 at 2:07:48 AM UTC+5:30, [email protected] wrote:
>
> Hi,
>
> Could you give an example of your structure? Or, did you have a test case
> to share??
>
> Thanks in advance
>
> Regards,
> Michela
>
--
---
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.