2016-11-17 63 views
0

的Android ContentResolver的長度我想將Calllog只過濾已知numbes但我得到的LEN()函數崩潰(沒有這樣的功能:LEN(代碼1))的價值

cursor = context.getContentResolver().query(CallLog.Calls.CONTENT_URI, null, 
       CallLog.Calls.TYPE + "=" + CallLog.Calls.INCOMING_TYPE + 
       " AND len(" + CallLog.Calls.NUMBER + ") > 3", 
       null, CallLog.Calls.DATE); 

感謝幫助

+0

https://www.sqlite.org/lang_corefunc.html – pskink

回答

1

您應該使用length而不是len

對於字符串值X,長度(X)函數返回第一個NUL字符之前X中的字符數(不是字節)。由於SQLite字符串通常不包含NUL字符,因此length(X)函數通常會返回字符串X中的字符總數。對於blob值X,length(X)將返回blob中的字節數。如果X爲NULL,則長度(X)爲NULL。如果X是數字,則長度(X)返回X的字符串表示的長度。

+0

愚蠢的錯誤。謝謝 – user3734429