Skip to content

The joker_query is a cute query builder, with Joker can implement most complex queries with sugar syntax

License

Notifications You must be signed in to change notification settings

Rustixir/joker_query

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

joker_query

joker_query

The joker_query is most sugared query builder of Rust, with joker_query can implement most complex queries with sugar syntax

Features

− (Operator) - fully implemented ( Select, Insert, Update, Delete ) query operations

− (SubQuery) - can use subquery for operators ( IN, EXISTs, <, >, <= >=, Any ) also can use sub-query for data source for example select * from (...)

Example

NewVersion from 1.0.0

Select

    Select::
        cols(vec!["id", "age", "fullname"])
        .distinct()
        .from("customer")
        .inner_join("merchant").on("customer.id", "customer_id")
        .left_join("product").on("customer.id", "customer_id")
        .where_by("age", op::between(10, 25))
        .and("fullname", op::like("full%"))
        .or("fullname", op::not_in(vec!["danyal", "danyalmh", "danyalai"]))
        .group_by(vec!["merchant_id"])
        .having(&Func::count("id"), op::eq(2025))            
        .order_by("fullname")
        .order_by_desc("age")
        .limit(10)
        .offset(5)
        .build();

Examples

  • See the complete examples here.

Benchmark

  • almost all complex queries run under 5us

Crates

joker_query = "1.0.0"

About

The joker_query is a cute query builder, with Joker can implement most complex queries with sugar syntax

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages