next_web_common/query/
mod.rs

1pub mod query_wrapper;
2
3/// 这个模块提供了QueryWrapper功能,用于构建SQL查询条件
4/// 
5/// # 示例
6/// 
7/// ```rust
8/// use next_web_common::query::query_wrapper::{QueryWrapper, OrderDirection};
9/// 
10/// // 创建一个简单的查询
11/// let query = QueryWrapper::new()
12///     .eq("name", "张三")
13///     .gt("age", "18")
14///     .build_sql("users");
15/// 
16/// // 创建一个复杂的查询
17/// let complex_query = QueryWrapper::new()
18///     .eq("status", "active")
19///     .or()
20///     .nested(|q| q.eq("role", "admin").gt("level", "5"))
21///     .order_by_desc("created_at")
22///     .limit(10)
23///     .offset(20)
24///     .build_sql("users");
25/// 
26/// // 使用IN条件
27/// let in_query = QueryWrapper::new()
28///     .r#in("id", vec!["1", "2", "3"])
29///     .build_sql("users");
30/// 
31/// // 使用BETWEEN条件
32/// let between_query = QueryWrapper::new()
33///     .between("age", "18", "30")
34///     .build_sql("users");
35/// 
36/// // 使用LIKE条件
37/// let like_query = QueryWrapper::new()
38///     .like("name", "张")
39///     .build_sql("users");
40/// 
41/// // 使用GROUP BY和HAVING
42/// let group_query = QueryWrapper::new()
43///     .select(vec!["department", "COUNT(*) as count"])
44///     .group_by(vec!["department"])
45///     .having("COUNT(*) > 5")
46///     .build_sql("employees");
47/// ```
48pub struct QueryExample;