feat: 新增 BooleanFunctionLookup 支持函数式操作符

- sqlgen: 新增 BooleanFunctionLookup,生成 FUNC(LHS, RHS) 格式,优先级高于 BooleanOperatorLookup
- dialect/duckdb: 使用 regexp_matches 替代 ~ 实现部分匹配,等价于 MySQL REGEXP
- sqlgen/expression_sql_generator_test: 补充 BooleanFunctionLookup 测试用例,修正 encode_error 前缀
- sqlgen/sql_dialect_options_test: 验证 BooleanFunctionLookup 默认为 nil
- dialect/duckdb_test: 新增 regexp_matches SQL 生成测试
This commit is contained in:
2026-05-21 13:34:04 +08:00
parent 1288c4919c
commit 37581f3a65
6 changed files with 74 additions and 3 deletions
+2
View File
@@ -219,6 +219,8 @@ type (
// exp.RegexpNotILikeOp: []byte("!~*"),
// })
BooleanOperatorLookup map[exp.BooleanOperation][]byte
// 函数式布尔操作符,生成 FUNC(LHS, RHS) 格式,优先级高于 BooleanOperatorLookup
BooleanFunctionLookup map[exp.BooleanOperation][]byte
// A map used to look up BitwiseOperations and their SQL equivalents
// (Default=map[exp.BitwiseOperation][]byte{
// exp.BitwiseInversionOp: []byte("~"),