我有兩個表tableA
和tableB
,它們都有字段id, code, validFrom
和validUntil
。我試圖從tableA.code = tableB.code
,tableA.validFrom = tableB.validFrom
和tableB.validUntil = Null && tableA.validUntil != Null
這兩個表中獲得ID。 我試了一個選擇與內部聯接MySql通過其他元素從兩個不同的表中選擇ID,然後ids
Select a.id, b.id from tableA as a
inner join tableB as b ON
(a.code = b.code and a.validFrom = b.validFrom)
where b.validUntil is Null and a.validFrom != Null
但我得到0結果與此。 表例如
TableA
id | code | validFrom | validUntil | Extra
---------------------------------------------
1 | ABCD | 2010-01-01 | 2016-01-01 | NULL
2 | EFA | 2010-01-01 | 2015-01-01 | 12
3 | FAS | 2012-01-01 | 2017-01-01 | 13
而且
TableB
id | code | validFrom | validUntil | Extra
---------------------------------------------
1 | EFA | 2010-01-01 | NULL | 12
2 | ABCD | 2010-01-01 | NULL | NULL
3 | FAS | 2012-01-01 | 2017-01-01 | 13
所以結果應該是
TableA.id | TableB.id
---------------------
1 | 2
2 | 1
編輯:
Select a.id, b.id from tableA as a
left join tableB as b ON
a.code = b.code
and a.validFrom = b.validFrom
and a.Extra = b.Extra
where b.validUntil is Null
and a.validFrom is not Null
是啊,我的壞忘了寫在這裏像那個用於Java –
@LukasKarmanovas,請參閱編輯答案,如果有幫助。 – Rahul
是的,這是工作,但即時通訊沒有得到所有的ID,即時獲取其中一些 –