How does a!QueryEntity works? I am fetching data from a table through a!que

How does a!QueryEntity works?
I am fetching data from a table through a!queryEntity. Table has n number of columns from which only one can have unique data (Primary Key Column). Others can have duplicate data.
I tried to fetch data in batchSize of 5. The problem is, for a column "Name", if a name is same in 12 rows, and I try to fetch data sorted by "Name" for startIndex 1. The identifiers (primary key) comes: 14; 18; 17; 16; 15. Then I change the startIndex to 6, the identifier comes: 19; 18; 17; 16; 15. Now I change the startIndex to 11, the identifier comes: 16; 15; 4; 7; 6.
If you observe, there is some same data coming in every Set (18,17,16,15 -- > 18,17,16,15 --> 16,15). After that identifier changes because same name is there in table for 12 times only.

Can anyone explain why is this happening ?
Why the same/duplicate data is coming even when data is sorted on that column and startIndex is changing?
I am using a Oracle DB. I ha...

Query

OriginalPostID-184999

OriginalPostID-184999

  Discussion posts and replies are publicly visible

Parents
  • The problem is that, you leave the order of the records to the database, as sorting by "NAME" field is not sufficient. So the solution is to add additional sorting field to your pagingInfo. Your best bet is the "Id" field, because it's unique.

    Something like this:

    pagingInfo: a!pagingInfo(
    startIndex: 1,
    batchSize: 10,
               sort: { a!sortInfo(
                         field: "NAME",
                         ascending: true),
                         a!sortInfo(
                         field: "Id",
                         ascending: true)
                        }
    )

Reply
  • The problem is that, you leave the order of the records to the database, as sorting by "NAME" field is not sufficient. So the solution is to add additional sorting field to your pagingInfo. Your best bet is the "Id" field, because it's unique.

    Something like this:

    pagingInfo: a!pagingInfo(
    startIndex: 1,
    batchSize: 10,
               sort: { a!sortInfo(
                         field: "NAME",
                         ascending: true),
                         a!sortInfo(
                         field: "Id",
                         ascending: true)
                        }
    )

Children
No Data