C#lambda或linq查询 [英] C# lambda or linq query

查看:219
本文介绍了C#lambda或linq查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有3个实体:

TableA  (Id,Code,Start,End)

I've got 3 entities:
TableA (Id, Code, Start, End )

表B  (代码,开始,结束,表格A)

TableB (Code, Start, End, TableAId )

TableC (代码,开始,结束)



我要做的是以下内容,而不是使用linq或lambda(最好)的sql查询:



TableC (Code, Start, End )

What I'm trying to do is the following, but instead of sql query using linq or lambda(preferable):

SELECT a.Id

FROM TableA a 

FROM TableA a 

INNER JOIN TableB b ON(a.Id = b.TableAId) 

INNER JOIN TableB b ON ( a.Id = b.TableAId ) 

INNER JOIN TableC c ON((  a.Code = c.Code AND(a.Start BEWTEEN c.Start AND c.End OR  a.End BEWTEEN c.Start AND c.End))OR(b.Code = c .Code AND(b.Start BEWTEEN c.Start AND c.End OR  b.End BEWTEEN c.Start AND c.End)))

INNER JOIN TableC c ON ( ( a.Code = c.Code AND ( a.Start BEWTEEN c.Start AND c.End OR a.End BEWTEEN c.Start AND c.End ) ) OR ( b.Code = c.Code AND ( b.Start BEWTEEN c.Start AND c.End OR b.End BEWTEEN c.Start AND c.End ) ) )



我一直试图将这项工作暂时完成,但却无法完成。我正在努力做的是桌子上的内部连接和中间连接的OR。

任何帮助都将赞赏 

推荐答案

Linq不是全部停止并结束所有解决方案,也不是lambda。

Linq is not the stops all and ends all solution and neither is lambda.

IMO,你需要用上面的T-SQL创建一个存储过程并调用它来返回ID的结果。

IMO, you need to create a stored procedure with the above T-SQL and call it to return the result of the ID.


这篇关于C#lambda或linq查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆