[英]Query the Latest Data Based On Condition in Multiple Columns and Concat Them
我有一個這樣的數據庫
我嘗試根據最新的 s_from_date 和 t_from_date 查詢每個員工的最新工作和薪水,並將其連接到一列“當前員工”
我嘗試用 max(s_from_date) 和 max(t_from_date) 過濾它,但它沒有用
SELECT CONCAT (first_name,' ',last_name,' ',salary,' ',title) As "Current Employees"
FROM employees WHERE s_from_date = (SELECT MAX(s_from_date) FROM employees) AND t_from_date = (SELECT MAX(t_from_date) FROM employees);
你可以試試
SELECT CONCAT(first_name,' ',last_name,' ',salary,' ',title) As "Current Employees"
FROM employees e1
WHERE s_from_date = (SELECT MAX(s_from_date) FROM employees e2
WHERE e2.first_name = e1.first_name AND e2.last_name = e1.last_name)
AND t_from_date = (SELECT MAX(t_from_date) FROM employees e3
WHERE e3.first_name = e1.first_name AND e3.last_name = e1.last_name);
如果您的employees
表有id
/ employee_id
列,而不是在 2 個子查詢的條件下使用last_name
和first_name
,您可以將其更改為e2.id = e1.id
, e3.id = e1.id
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.