Tag: 外连接

如何在Linq中完成一个完整的外连接?

我已经inheritance了一个没有完全devise的数据库,我需要操纵一些数据。 让我举一个比较常见的比喻来说明我所要做的事: 比方说,我们有一个Student表,一个StudentClass表,logging他所有的class级logging,还有一个StudentTeacher表,存储所有教这个学生的老师。 是的,我知道这是一个愚蠢的devise,将老师存放在class级表上会更有意义 – 但这就是我们正在处理的事情。 我现在想清理这些数据,我想find一个学生有一个老师,但没有class级,或一个class级,但没有老师的地方。 SQL因此: select * from StudentClass sc full outer join StudentTeacher st on st.StudentID = sc.StudentID where st.id is null or sc.id is null 你在Linq怎么做?

排名前1的左连接

在下面的查询中,可能会有多个具有相同标记关键字的dps_markers中的行,但我们只想对第一个行进行连接。 如果我把这个查询,并删除顶部1和ORDER BY我得到一个值为mbg.marker_value,但运行它总是返回null SELECT u.id, mbg.marker_value FROM dps_user u LEFT JOIN (SELECT TOP 1 m.marker_value, um.profile_id FROM dps_usr_markers um (NOLOCK) INNER JOIN dps_markers m (NOLOCK) ON m.marker_id= um.marker_id AND m.marker_key = 'moneyBackGuaranteeLength' ORDER BY m.creation_date ) MBG ON MBG.profile_id=u.id WHERE u.id = 'u162231993'

LINQ – 完全外部join

我有一个人的ID和他们的名字,以及一个人的ID和他们的姓名列表。 有的人没有名字,有的没有姓; 我想在两个列表上完成一个完整的外连接。 所以下面的列表: ID FirstName — ——— 1 John 2 Sue ID LastName — ——– 1 Doe 3 Smith 应该产生: ID FirstName LastName — ——— ——– 1 John Doe 2 Sue 3 Smith 我是LINQ的新手(所以请原谅我,如果我是跛脚),并发现了很多“LINQ外连接”的解决scheme,看起来都非常相似,但似乎留下了外部连接。 我到目前为止的尝试是这样的: private void OuterJoinTest() { List<FirstName> firstNames = new List<FirstName>(); firstNames.Add(new FirstName { ID = 1, Name = "John" }); […]

Oracle(旧?)join – 转换的工具/脚本?

我一直在移植oracleselect,而且我已经遇到了很多像这样的查询: SELECT e.last_name, d.department_name FROM employees e, departments d WHERE e.department_id(+) = d.department_id; …和: SELECT last_name, d.department_id FROM employees e, departments d WHERE e.department_id = d.department_id(+); 有没有任何指南/教程转换(+)语法的所有变种? 甚至叫什么语法(所以我可以谷歌冲)? 更好 ..是否有一个工具/脚本,将为我做这个转换(首选免费)? 某种优化器? 我有大约500这些查询端口.. 这个标准什么时候被淘汰? 任何信息表示赞赏。

LINQ to SQL – 左外部连接多个连接条件

我有以下SQL,我正在尝试转换为LINQ: SELECT f.value FROM period as p LEFT OUTER JOIN facts AS f ON p.id = f.periodid AND f.otherid = 17 WHERE p.companyid = 100 我已经看到了左外连接的典型实现(即into x from y in x.DefaultIfEmpty()等),但是不确定如何引入其他连接条件( AND f.otherid = 17 ) 编辑 为什么AND f.otherid = 17条件部分JOIN,而不是在WHERE子句? 因为f可能不存在的一些行,我仍然希望这些行被列入。 如果在WHERE子句中应用条件,则在JOIN之后 – 那么我不会得到我想要的行为。 不幸的是: from p in context.Periods join f in context.Facts on […]

SQL Server中的左连接与左连接外连接

LEFT JOIN和LEFT OUTER JOIN什么区别?

“INNER JOIN”和“OUTER JOIN”有什么区别?

另外如何做LEFT JOIN , RIGHT JOIN和FULL JOIN适合?