我打算以此爲基準,但由於它的工作量很大,我想檢查一下,如果我以前沒有錯過任何明顯的答案。Sqlite子查詢:在一個大的查詢或在for循環?
我有一個巨大的查詢,獲取與子查詢每行的一些更多的細節。
然後,每行被用在插入ListView的ListAdapter中,因此另一個循環將逐一取出每一行以使其成爲ListItem。
你覺得更重要的是有效的:
- 保持子查詢的SQL一塌糊塗,在SQL引擎計數做出優化。
- 取出ListAdapter循環中的子查詢,所以我們懶加載顯示的細節:更可讀,但恐怕太多的命中會減慢過程。
兩個重要的事情:
- 我不能重寫大SQL塊擺脫子查詢。我知道這會更好,但我沒有這樣做。
- 據我所知,一個列表不會包含超過1000個項目,而且它是一個桌面應用程序,所以沒有併發性。這與在這種情況下關心perf有關嗎?如果沒有,我仍然有興趣回答一個高交通網站。很高興知道...
我已經在使用光標,但我沒有意識到它會解決部分問題。 :-) – 2009-06-16 08:08:38