我有兩個表具有相同結構的表(2012年一個,2013年一個),都包含人員及其詳細信息作業ID。我正在尋找所有獲得晉升的人的名單。我知道,只有在2012年表格中存在其人員ID但位置ID已更改的人員才能獲得此優惠。我知道我可以使用exists並獲取2012年表中的所有記錄,但是如何檢查兩個表中的記錄應該具有不同的位置id值?查詢獲得其他表中存在其ID的記錄列表的查詢,但其他列的值不同
表1 & 2:
pers_id,姓名,部門,薪水,工作ID .....
我有兩個表具有相同結構的表(2012年一個,2013年一個),都包含人員及其詳細信息作業ID。我正在尋找所有獲得晉升的人的名單。我知道,只有在2012年表格中存在其人員ID但位置ID已更改的人員才能獲得此優惠。我知道我可以使用exists並獲取2012年表中的所有記錄,但是如何檢查兩個表中的記錄應該具有不同的位置id值?查詢獲得其他表中存在其ID的記錄列表的查詢,但其他列的值不同
表1 & 2:
pers_id,姓名,部門,薪水,工作ID .....
SELECT t2.*
FROM table2012 t1
INNER JOIN table2013 t2 ON t1.tableID = t2.tableID
WHERE t1.position <> t2.position;
tableId
是爲表中每條記錄的標識符。我不確定這是否是pers_id,或者您有不同的ID。
SELECT Data2013.pers_id
FROM Data2013 INNER JOIN Data2012
ON (Data2013.pers_id = Data2012.pers_id) AND (Data2013.position_id <> Data2012.position_id);
訪問拋出一個語法錯誤與'!=',因此改變它的'WHERE'條件't1.position <> t2.position' – HansUp
@HansUp。謝謝 –