首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android CursorLoader 排序:COLLATE NOCASE 實現大小寫不敏感 AaBb 排序

     編輯:程式設計綜合問答

問題

預設 ORDER BY COL_NAME 依 ASCII 碼排序:A B C ... Z a b c ... z,但需求為 A a B b C c ... Z z。

一行解決

return new CursorLoader(getActivity(), URI, null, null, null, COL_NAME + " COLLATE NOCASE");

原理

SQLite COLLATE NOCASE 讓比較忽略大小寫,且保持原始大小寫順序輸出,完美符合「字母順序不分大小寫」需求。

補充

  • 若需自定義排序 (如數字優先、特殊符號處理),可在 SQL 中使用 CASE WHEN 建立排序鍵
  • CursorLoader 最後一參數直接對應 ORDER BY 子句,支援完整 SQL 排序語法
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved