joker_query

Crates.iojoker_query
lib.rsjoker_query
version1.0.0
sourcesrc
created_at2023-11-17 22:04:10.231045
updated_at2023-12-07 16:13:22.804911
descriptionThe joker_query is most sugared query builder of Rust
homepagehttps://github.com/Rustixir/joker_query
repositoryhttps://github.com/Rustixir/joker_query
max_upload_size
id1039654
size204,501
DanyalMh (Rustixir)

documentation

README

joker_query

Download

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"

Commit count: 38

cargo fmt