0

我有這個SQL查詢,因爲我願意使用content://sms/inbox我不能使用rawQuery傳遞它,並且必須使用contentResolver。我不知道該怎麼做。將SQLite命令轉換爲適當的contentResolver查詢

它應該返回每個號碼最近收到的短信。

這裏的SQL,如果你能幫助我的是:/

SELECT adress, id, date /*Columns from the SMS contentResolver*/ 
FROM sms_databse /*Uri.parse("content://sms/inbox"); ????*/ 
WHERE (
SELECT COUNT(*) AS "s" 
FROM sms_databse /*Uri.parse("content://sms/inbox"); ????*/ 
WHERE s.adress = sms_database.adress 
AND s.date <= sms_database.date 
) 
<=1 

回答

0

內容變壓器接口不允許任意查詢(所允許的rawQuery()),但仿照簡單query()功能。

簡單的接口允許內容解析器實現檢查客戶端是否嘗試訪問禁止的數據;如果允許任意的SQL,這是不可能的。

如果您想對數據執行復雜的處理,您可以獲取所有數據,並自行完成。

+0

因此,使用query()時沒有辦法建立子查詢?在那種情況下,我應該如何繼續? – Papyrusko