#sql #sql-query #builder #query-builder #programmatically #lua #statement

已删除 lua-sql-builder

以编程和直观的方式构建 SQL 语句

3 个版本

0.1.4 2024 年 3 月 2 日
0.1.3 2024 年 3 月 2 日
0.1.2 2024 年 3 月 1 日
0.1.1 2024 年 3 月 1 日
0.1.0 2024 年 2 月 29 日

#programmatically 中排名第 27

MIT 许可证

15KB
376

Lua sql builder

这个仓库包含一个用 Rust 编写的项目,旨在构建 SQL 查询。它是为了学习更多关于 Rust 编程语言及其应用而创建的。

关于项目

该项目是一个 SQL 查询构建器,允许您以编程和直观的方式创建复杂的 SQL 查询。它支持各种 SQL 操作,包括列选择、连接、WHERE 子句、分组、排序等。

以下是一个使用代码构建 SQL 查询的示例

use lua_sql_builder::mysql::{
    join::JoinType,
    select::Select,
    where_::{Combiner, Where},
};

pub fn main() {
    let mut select = Select::new();
    let mut where_ = Where::new(Combiner::And);
    where_
        .not_equal_to("email", "[email protected]")
        .greater_than_equal("age", "2")
        .less_than("salary", "230.00")
        .less_than_equal("age", "25")
        .is_null("genre");

    select
        .columns("name, age, email, salary")
        .from("users_tb u")
        .join("emails_tb e", "e.user_id = u.user_id", JoinType::Left)
        .join("phones_tb p", "p.user_id = u.user_id", JoinType::Left)
        .where_(where_);

    println!("{}", select.build());
}

输出

SELECT name, age, email, salary FROM users_tb u LEFT JOIN emails_tb e ON e.user_id = u.user_id LEFT JOIN phones_tb p ON p.user_id = u.user_id WHERE email != '[email protected]' AND age >= 2 AND salary < 230.00 AND age <= 25 AND genre ISNULL;

无运行时依赖