Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Standardize Criteria Query and Introduce KeySet Pagination #482

Open
otaviojava opened this issue Feb 28, 2024 · 1 comment
Open

Standardize Criteria Query and Introduce KeySet Pagination #482

otaviojava opened this issue Feb 28, 2024 · 1 comment
Assignees

Comments

@otaviojava
Copy link
Contributor

Which JNoSQL project the issue refers to?

JNoSQL (Core)

Use case

Currently, the project has separate classes for DocumentQuery and ColumnQuery, as well as DocumentDeleteQuery and ColumnDeleteQuery, which contain similar fields. The objective is to unify these classes into two shared API classes: SelectQuery and DeleteQuery.

This unification will pave the way for implementing KeySet pagination and enhancing the CriteriaQuery functionality.

Feature proposal

Objective:

  • Unify DocumentQuery and ColumnQuery into SelectQuery.
  • Unify DocumentDeleteQuery and ColumnDeleteQuery into DeleteQuery.
  • Implement KeySet pagination.
  • Enhance CriteriaQuery.

Expected Outcome:

  • Reduced code duplication by unifying query classes.
  • Introduction of KeySet pagination feature for efficient large dataset retrieval.
  • Improved CriteriaQuery functionality for more flexible and powerful querying operations.
@otaviojava otaviojava self-assigned this Feb 28, 2024
@redmitry
Copy link
Contributor

Is there any work to support JSONPath queries?

"path": "$.measures[[email protected] == 'LOINC:3141-9' && @.measurementValue.value $operator '$value']"

Currently, I have to directly generate mongo queries, because I found no way to support something like:

{
  "measures": {
    "$elemMatch": {
      "assayCode.id": "LOINC:35925-4", 
      "measurementValue.value": {"$gt": 25}
    }
  }
}

Thank you,

D.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants