我的意思是確定性的是查詢將始終返回完全相同的結果集。有沒有辦法做到這一點?如何檢查sql查詢是否爲確定性?
2
A
回答
1
查詢通常不被認爲是確定性的,因爲基礎表可以在調用之間改變。在討論UDF時,決定論通常只會發揮作用。
0
我知道在數據庫中生成確定性數據的唯一方法是在適當的時間點創建必要數據的快照。通常情況下,數據將被轉換並加載到數據倉庫中,以及要歸檔的行的時間戳,以供日後檢索。可以針對數據倉庫運行審計和其他類型的報告查詢,並且結果對於任何給定的時間段都是「確定性的」,但不是跨越時間段。
如果需要,安置在數據倉庫中的信息也可以預先計算到多維立方體中以加快處理速度。爲了保持適當的表格,數據倉庫表只能插入到數據倉庫表中,並且新的批次數據應始終與唯一的時間戳相關聯。通常最好以star or snowflake schema的某種形式存儲數據,這有助於在必要時生成立方體。
相關問題
- 1. 如何檢查查詢是否正確
- 2. 如何檢查SQL表是否被鎖定以查詢?
- 3. SQL Server查詢,以檢查是否
- 4. 如何確定SQL查詢是否是SELECT?
- 5. 檢查以確定ofstream是否爲空?
- 6. 如何檢查查詢是否有限?
- 7. 如何確定SQL的查詢是否太複雜?
- 8. PowerShell:如何確定SQL查詢是否返回0行
- 9. 如何檢查UPDATE mysqli查詢是否正確執行?
- 10. 如何檢查sql查詢是否返回值?
- 11. 如何檢查SQL Server中是否正在查詢表
- 12. 如何檢查SQL子查詢中是否存在字段?
- 13. 檢查屬性是否存在與檢查是否爲空
- 14. 否定SQL查詢
- 15. 如何檢查請求查詢值是否爲空,如「」?
- 16. LINQ SQL查詢檢查對象字段是否爲空
- 17. 檢查LINQ to SQL查詢中的List是否爲空?
- 18. 這個sql查詢是否正確?
- 19. 我的sql查詢是否正確?
- 20. 如何檢查查詢緩存中是否存在查詢?
- 21. SQL查詢正確性
- 22. Javascript:如何正確檢查選定的選項是否爲空?
- 23. 檢查如果結果是sql查詢
- 24. 如何在參數化查詢中檢查T-SQL中的值是否爲空?
- 25. 如何檢查從SQL/PHP查詢返回的值是否爲空?
- 26. 如何檢查是否在web.py/python中的sql查詢結果爲空
- 27. 如何檢查Mysqli查詢是否爲空?
- 28. 如何檢查Firebase查詢是否爲空
- 29. 如何檢查查詢參數是否爲空的AngularJS形式
- 30. 如何檢查查詢響應是否爲空Parse Sever?
我知道決定論並不真正與查詢有關。但是有一個業務需求(用於審計目的)查詢結果必須是可重現的。 – Josh 2010-07-08 00:24:28
確保這一點的唯一方法是絕對不允許對查詢中引用的行進行更新或刪除。如果你有一對多的關係,即使插入有問題。這裏最好的辦法是以某種方式將實際的查詢結果(可能作爲報告)進行歸檔,以便稍後生成。 – Donnie 2010-07-08 00:27:21
我們不允許更新或刪除,但我們允許插入。正如你所提到的,當存在一對多關係時會產生問題。我真正追求的是檢查查詢沒有處理的沒有一對多關係的人。 – Josh 2010-07-08 00:30:49