c# - 尝试动态生成深度复杂的 sql 查询
问题描述
我正在尝试使用多个过滤条件(where 子句)构建一个动态 SQL 查询,它可以通过子查询和连接变得复杂和深入。
我已经使用FilterClass为此构建了一个基本结构
{
Column,
Operator,
Value
}
但这是有限的,因为我无法将其用于选择或更新。到目前为止,该应用程序不使用任何类型的 ORM 来生成动态查询。
我正在尝试通过过滤器列表添加组条件,但这也不会生成复杂的查询。
示例查询
WHERE ID IN (SELECT ID FROM TABLE WHERE COL IN (VALUES)) AND COL2 = SOMEVAL OR (COL2 = SOMEANOTHERVAL)
我如何在上面进行扩展以生成复杂的查询,或者是否有任何工具可以做到这一点(因为我不应该重新发明轮子)
解决方案
推荐阅读
- algorithm - 使用随机枢轴快速排序对大小为 n 的数组进行排序的比较次数?
- angular - 无法从 Angular 12 升级到 Angular 13
- flutter - FAILURE:构建失败并出现异常。无法解析所有文件以进行配置
- amazon-web-services - 使用 MWS 密钥的 Amazon SP API 身份验证
- amazon-web-services - 带/不带访问密钥和秘密访问密钥的 AWS Cognito InitiateAuth
- r - BigQuery 和 R Shiny - 让用户为查询付费
- django - 我想在 django 的 settings.py 文件中获取当前 url
- python - Python 简单的基础到基础转换器不返回任何结果
- python - 如何使用分类 x 轴制作 matplotlib 散点图,允许我根据第三个变量指定标记和颜色?
- scala - 如何在scala中自动解析spark sql选择结果的数据类型