[英]Use Case is postgresql query to get record based on condition
我有兩個表a)tblresign和b)tblemp
tblresign有一個外鍵,它引用了tblemp主鍵
tblresign在列的離開日期有tblemp在列的退休日期有
我想寫一個查詢來檢查條件,如果存在leftdate,則不會給出退休日期,如果存在retiredate,則不會給出Leaveingdate,這意味着我只需要兩個日期都需要一個日期
可以幫助任何人如何在PostgreSQL中編寫該選擇查詢
不確定我是否理解您的問題,但是對此:
SELECT e.emp_name,
e.id,
coalesce(r.leavingdate, e.retiredate) as some_date
FROM tblemp e
LEFT JOIN tblresign r ON e.id = r.emp_id
如果tblresign中沒有雇員的行,或者該行的離開日期為null,則顯示retiredate。
您沒有說明要顯示兩個日期都存在的日期。 您可能需要更改coalesce()函數中的順序以適合您的需求。 如果您有更復雜的規則,那么您可能希望使用CASE語句來涵蓋該規則。 但是我們需要更多的信息來回答這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.