首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将带有“with”子句的SQL转换为LLBLGen Pro DynamicQuery

将带有“with”子句的SQL转换为LLBLGen Pro DynamicQuery
EN

Stack Overflow用户
提问于 2013-11-21 21:41:27
回答 1查看 509关注 0票数 1

我很难将一个有点简单的查询转换为一个LLBLGen Pro动态查询。我需要转换类似于以下SQL的内容(但我将传入该区域的值、要检查的id和所需的名称):

代码语言:javascript
复制
SELECT  Parent.Id
FROM    Parent INNER JOIN Child
ON      Child.ParentId = Parent.Id
WHERE   Parent.Region = '1'
    AND Parent.Id IN (1, 2, 3, 4, 5)
GROUP BY
        Parent.Id
HAVING  SUM(CASE WHEN child.Name IN ('Required1', 'Required2', 'Required3') THEN 1 ELSE 0 END) != 3

但是,我很难将having子句转换为LLBL等价物。

到目前为止,这就是我所拥有的:

代码语言:javascript
复制
var q = qf.Create()
          .From(qf.ParentView
            .InnerJoin(qf.ChildView)
                .On(ChildViewFields.Id == ParentViewFields.ParentId))
          .Where((ParentViewFields.Region == _region)
            .And(ParentViewFields.Id.In(_checkIds)))
          .Select(() => ParentViewFields.Id.ToValue<string>())                      
          .GroupBy(ParentViewFields.Id)
          .Having( ??? )

任何帮助都将不胜感激。对于如何完成SQL所做的工作,我愿意听取其他建议(请注意,SQL必须在数据库中运行,而不是为了进一步的计算而使客户端崩溃)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-27 14:08:28

类似于:

代码语言:javascript
复制
Functions.IIF(ChildViewFields.Name.In("Required1", "Required2", "Required3"), 1, 0).Sum().NotEqual(3)

(所以把它放在有电话里)

请下次在我们的支持论坛上张贴,这样我们就可以立即回答问题,因为我们不定期监测堆叠溢出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20132529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档