Crates.io | typed-sql |
lib.rs | typed-sql |
version | 0.2.1 |
source | src |
created_at | 2021-05-23 16:45:22.624759 |
updated_at | 2023-07-15 19:15:40.761694 |
description | A strongly typed sql serialization/deserialization framework |
homepage | |
repository | https://github.com/matthunz/typed-sql |
max_upload_size | |
id | 401161 |
size | 40,254 |
use typed_sql::{Query, Table, ToSql};
#[derive(Table)]
struct User {
id: i64,
name: String
}
let stmt = User::table()
.select()
.filter(|user| user.id.neq(6).and(user.id.gt(3)))
.group_by(|user| user.name)
.order_by(|user| user.name.then(user.id.ascending()))
.limit(5);
assert_eq!(
stmt.to_sql(),
"SELECT * FROM users \
WHERE users.id != 6 AND users.id > 3 \
GROUP BY users.name \
ORDER BY users.name,users.id ASC \
LIMIT 5;"
);