我正在通過SQL服務器的終極平臺內部使用Cognos 10 Query Studio。需要想法如何從表中使用Cognos裏面的Cognos裏面的日期記錄
基本上,我有一張表格,每位員工支付每期工資總額。該表是這樣的:
Employee1 - PayPeriodStateDate1 - PayPeriodEndDate1 - PayDate1 - GrossPay1
Employee1 - PayPeriodStateDate2 - PayPeriodEndDate2 - PayDate2 - GrossPay2
Employee1 - PayPeriodStateDate3 - PayPeriodEndDate3 - PayDate3 - GrossPay3
Employee2 - PayPeriodStateDate1 - PayPeriodEndDate1 - PayDate1 - GrossPay1
Employee2 - PayPeriodStateDate2 - PayPeriodEndDate2 - PayDate2 - GrossPay2
Employee2 - PayPeriodStateDate3 - PayPeriodEndDate3 - PayDate3 - GrossPay3
等等......除了有數千員工和數千名支付期的超過約二十年。
我需要爲每位員工提供一份包含最近52次記錄(過去兩年)平均值的清單。顯然,如果每個員工都有一個不間斷的服務時間,這將非常容易。我可以採取current_date - 2年,對吧?
問題是,許多員工離開並回來。如果Joe Blow從2015年7月到2015年11月離開(十個薪酬階段),他將在前42個薪酬階段獲得平均薪酬。
我很確定我可以在此Cognos環境中的查詢中使用SQL。我怎樣才能得出前兩年所有記錄的清單,計算記錄的數量,並將這些記錄的總數除以我計算的數字?有任何想法嗎?
謝謝!
對不起,我不太瞭解Cognos和sql server有什麼可用,但是sql server窗口函數可能會導致此問題。您可以按員工劃分結果,按最近的付款日期排序,然後從該集合和平均值中獲取前52個結果。再一次,我不知道這是否兼容,只是一個想法。 – dfundako
我很確定我可以在這些查詢中編寫SQL。我使用了其他更簡單的SQL命令。我只在這個系統中工作了幾天,所以我不確定它能做什麼,不能做什麼。我的問題是我在SQL方面並不擅長。我無法在僅限SQL的環境中執行此操作。我會使用「選擇」和「分組方式」創建派生表嗎? –