SELECT PCC.CUSTNO custNo,T.PERSON_NO,T.CREATNAME visitorName,to_char(T.VISIT_TIME,'yyyy-MM-dd HH24:mi:ss') visitDate ,T.VISIT_CONTENT vistTxt,PCC.INVNM custName,PCC.BALANCE_TOTAL,PCC.BALANCE_PRODUCT FROM PRSP_CRM_CUSTINFO PCC LEFT JOIN (SELECT a.*,row_number() over(partition by a.PERSON_NO ORDER BY a.VISIT_TIME DESC) as rn FROM (SELECT PCV.VISIT_CONTENT, PCV.VISIT_TIME, PPD.INVNM CREATNAME, PCMP.PERSON_NO FROM PRSP_CRM_MEETANDACTITY_PERSON PCMP LEFT JOIN PRSP_CRM_VISIT PCV ON PCV.SERIAL_VISIT_NO=PCMP.SERIAL_REFREN_NO LEFT JOIN PRSP_CRM_CUSTINFO PPD ON PPD.CUSTNO=PCV.CREATE_NO WHERE PCMP.MEET_TYPE='1' AND PCMP.PERSON_TYPE='2' AND PCMP.DELETE_FLG='0') a ) T ON PCC.CUSTNO=T.PERSON_NO and t.rn=1 where 1=1
1.首先 寫一個 鏈接查詢語句: 好比有時間的表排序函數
二、 經過這個函數 select a.* row_number() over(partition by 分組的字段 order by 排序時間 desc) as rn from (結果集) a code
2. 顯示的結果xml
這樣就會把第一條第二條進行排序。。 咱們 寫一個條件 rn=1 這樣就是取最近一條了。。排序
最後去關聯你想要的表就行了。。it
遇到的問題:io
若是其餘時間爲空 那麼他的排序就是 爲空的時間排再前面 如何解決呢?class
這裏使用上面的辦法解決。。。 select
效果圖:im