程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> select-關於left join 後distinct去重的問題

select-關於left join 後distinct去重的問題

編輯:編程解疑
關於left join 後distinct去重的問題

是這樣的 ,因為兩表之間是一對多的關系,我在用一個查詢條件查詢的時候,會查出來多條數據,
但是我想要通過一個字段去重,就是那個字段重復的全部去掉,代碼如下:

select   distinct myt.task_seq ,
            mytr.actual_start_date,mytr.actual_end_date,mytr.status         
                    from    
                    mss_yearend_task myt left join 
                    mss_yearend_task_result mytr 
                    on 
                    (myt.task_seq=mytr.task_seq) 
                    where 1=1

我現在想通過myt.task_seq 這個字段去重,應該如何完成呢?現在這個sql 直接報錯了。

最佳回答:


ok 這個已經知道了 是

select myt.*,mytr.status from mss_yearend_task myt left join(
Select * from
(
select a.*,row_number() over(order by task_seq) r
from mss_yearend_task_result a
) where r = 1 ) mytr
on myt.task_seq = mytr.task_seq

where 1=1

這樣寫的

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved