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;