在將報表中的sql轉換成視圖的時候發現,視圖的部分查詢條件的引數欄位不在視圖內,如果往視圖中添加這個欄位,則group by 就需要添加這個欄位,導致查詢出來的結果會出現重復的資料。

下面就是其中一條需要修改的sql陳述句。
select sum(t.work_hour-t.outside_work_hour) AS TEST,t.department_name from si_monthly_time t
where 1=1 and to_number(t.count_date)>=to_number(to_char(to_date(?beginTime ,'yyyy-MM'),'yyyyMM'))
and to_number(t.count_date)<=to_number(to_char(to_date(?endTime ,'yyyy-MM'),'yyyyMM'))
and t.in_instrument_id in (select v.in_instrument_id from in_instrument v where v.is_to_count='0')
group by t.department_name
如果
CREATE OR REPLACE VIEW TEST
AS
select sum(t.work_hour-t.outside_work_hour) AS TEST,t.department_name from si_monthly_time t
這樣創建的視圖,不包含count_date這個欄位,
就無法使用where對這個欄位進行查詢。

求助一下各位大佬,如何修改才好。
uj5u.com熱心網友回復:
SUM() OVER(PARTITION BY ) 是不是要這個uj5u.com熱心網友回復:
十分感謝,上面那個含參的sql陳述句你能改成視圖嗎?
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/41666.html
標籤:開發
