【发布时间】:2019-12-24 08:37:30
【问题描述】:
我有这张桌子。我想要实现的是 LEFT JOIN 仅在同一列中存在 2 个值时才有效。
例如,LEFT JOIN 仅适用于 EA-AC-A060047,因为它可用于贷记和借记列。以此类推。
这就是我想要实现的目标。
这是我目前得到的,没有运气。
SELECT
t1.referenceno, t2.credit, t3.debit
FROM
(SELECT
referenceno, credit, debit, employeeidno
FROM
earningsamendment
WHERE
employeeidno = 'D0080000010') AS t1
LEFT JOIN
(SELECT
referenceno, credit, debit, employeeidno
FROM
earningsamendment
WHERE
employeeidno = 'D0080000010') AS t2 ON t2.referenceno = t1.referenceno
LEFT JOIN
(SELECT
referenceno, credit, debit, employeeidno
FROM
earningsamendment
WHERE
employeeidno = 'D0080000010') AS t3 ON t3.referenceno = t1.referenceno
WHERE
t2.referenceno = t1.referenceno
AND t3.referenceno = t1.referenceno
ORDER BY
t1.referenceno
【问题讨论】:
-
最后一个信用值可用。但您是说 - * 可用于贷记和借记列*。
标签: sql sql-server join sql-server-2012 left-join