2012-01-09 60 views
0

在備用應用程序中,用戶可以更新其地址和電話號碼。當這些更改時,將更新三個字段:Old Value,New ValueField Changed。如果Field Changed是地址,我需要創建兩個報告頁面 - 一個是舊地址,另一個是新地址。但是,如果Field Changed是電話號碼,我只需要爲當前地址創建一個報告頁面。根據修改的字段,創建一個或兩個報告。

我最初的計劃是做一個Union,其中一個記錄的Old Value和另一個New Value。當只有地址發生變化時這應該起作用。但是,只要電話號碼發生變化,它就不會發生變化。我想我需要做一些案例陳述,但我不確定這是否是正確的方法。對不起,如果數據有點混亂(我沒有設計數據結構,這是由我們的教授助理提供的)。如果您需要更多信息,我會盡力提供。

我不是在尋找確切的SQL,但我想知道如果我正在接近這個正確的方式。

回答

0

你是指1或2頁報告的含義?你正在輸出爲CSV,PDF,XLSX或其他東西嗎?

如果你需要通過「純」sql來做到這一點,我會推薦一個存儲過程給出一個值,說明它是否是正在更新的地址或電話號碼。然後它可以執行更新,您可以簡單地執行一個if語句來確定要運行和返回哪個報告。

我建議儘可能以編程方式處理它。讓你的代碼運行sql更新,然後在你的代碼中調用適當的函數來獲取你需要的報告。然後,您可以通過其他方式輕鬆地重新使用該報告的代碼。

相關問題