新聞中心
Android開發(fā)中使用SQLite數(shù)據(jù)庫進行數(shù)據(jù)存儲是很常見的做法,而對于數(shù)據(jù)庫中數(shù)據(jù)的排序也是很重要的操作。本篇文章將介紹在Android開發(fā)中如何對查詢的數(shù)據(jù)庫進行排序。

創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網(wǎng)站制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的奉節(jié)網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
一、查詢數(shù)據(jù)庫
首先需要先打開或創(chuàng)建一個數(shù)據(jù)庫,然后進行查詢。查詢可以使用SQLiteDatabase類的query()方法來完成,該方法有很多重載,最常用的方法如下:
“`
public Cursor query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy, String limit)
“`
– table:指定要查詢的表名
– columns:需要查詢的字段
– selection:WHERE子句,指定查詢的條件
– selectionArgs:WHERE子句中有占位符時使用,占位符將會被selectionArgs中的參數(shù)替換
– groupBy:指定分組的列
– having:指定分組的條件
– orderBy:指定排序的列
– limit:指定查詢結果的數(shù)量限制
二、按照列名排序
要按照列名進行排序,只需要在查詢時指定orderBy參數(shù)即可。例如,按照score列從低到高排序,代碼如下:
“`
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.query(“student”, null, null, null, null, null, “score asc”, null);
“`
以上代碼中,orderBy參數(shù)指定為”score asc”,表示按照score列升序排序。
同理,可以使用”desc”關鍵字來指定倒序排序。例如,按照score列從高到低排序,代碼如下:
“`
Cursor cursor = db.query(“student”, null, null, null, null, null, “score desc”, null);
“`
三、按照多個列名排序
當需要按照多個列名進行排序時,只需要在orderBy參數(shù)中指定多個列名即可,多個列名之間用逗號分隔。例如,先按照score列進行排序,如果score列相同,則按照id列進行排序,代碼如下:
“`
Cursor cursor = db.query(“student”, null, null, null, null, null, “score asc, id asc”, null);
“`
以上代碼中,orderBy參數(shù)指定為”score asc, id asc”,表示按照score列升序排序,如果score列值相同,則按照id列升序排序。
四、按照自定義規(guī)則排序
當需要按照自定義規(guī)則進行排序時,可以使用SQL語句中的CASE語句實現(xiàn)。例如,在score列值為60的記錄之前添加一條記錄,代碼如下:
“`
Cursor cursor = db.rawQuery(“select *, ” +
“case when score=60 then 0 ” +
“else 1 end as sort ” +
“from student ” +
“order by sort asc, score asc”, null);
“`
以上代碼中,使用rawQuery()方法執(zhí)行原生的SQL語句,使用CASE語句實現(xiàn)自定義排序。當score列值為60時,將排序規(guī)則設為0,其他情況設為1,然后按照sort、score列升序排序。
五、
本篇文章介紹了在Android開發(fā)中如何對查詢的數(shù)據(jù)庫進行排序。簡單來說,只需要在查詢時指定orderBy參數(shù)即可實現(xiàn)排序??梢园凑樟忻判?,也可以按照多個列名排序。當需要按照自定義規(guī)則排序時,可以使用SQL語句中的CASE語句實現(xiàn)。在實際開發(fā)中,需要根據(jù)不同的業(yè)務需求選擇不同的排序方式。
成都網(wǎng)站建設公司-創(chuàng)新互聯(lián),建站經驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設,提供企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,響應式網(wǎng)站制作,設計師量身打造品牌風格,熱線:028-86922220android有幾種排序方法
三種,個別手機更多
數(shù)組排序 冒泡排序
最頃世好使用Android自帶的排序方法
實現(xiàn)接口Comparator
使用攔族Arrays.sort()排雀衡肢序數(shù)組
不
Android開發(fā) HashMap如何排序
HashMap排序是數(shù)據(jù)結構與亮拿算法中常見的一種排序算法。本文即以Android平臺為例來實現(xiàn)該算法。
具體代碼如下: public static void main(String args) { Map map = new HashMap(); map.put(“l(fā)isi”, 5); map.put(“l(fā)isi1”, 1); map.put(“l(fā)isi2”, 3); map.put(“l(fā)isi3”, 9); List> infoIds = new ArrayList>( map.entrySet()); System.out.println(“排序前”); for (int i = 0; i >() { public int compare(Map.Entry o1, Map.Entry o2) { return ( o1.getValue()-o2.getValue()); } }); System.out.println(“排序后”); for (int i = 0; i ent=infoIds.get(i); System.out.println(ent.getKey()+”蔽罩=”+ent.getValue()); }}
android map是怎么排序
你說掘晌拍的按要求排序,應該謹滾是有一些自定義規(guī)則排序吧,假如要通過判羨值來排序可以用以下方法: Java代碼 public static void main(String args) { Map map = new HashMap(); map.put(“l(fā)isi”, 5); map.put(“l(fā)isi1”, 1); map.put(“l(fā)isi2”, 3);
java中的Map是個key-valus形式存儲的健值對接口。Map是個接口,因此不能實例化,不同的子類有不同的實現(xiàn)方式。
HashMap 無序的,通過hash算法來(散列存儲)。
Hashtable 無序的,通過hash算法來(散列存儲),與HashMap不睜彎同的是Hashtable 是同步的(線程安全的)。
LinkedHashMap 有序的,通過缺早羨雙向鏈表來伏拍存儲數(shù)據(jù)。
TreeMap 排序的,通過Key來排序,排序規(guī)則會調用key的compareTo方法來計算。
關于android 查詢數(shù)據(jù)庫排序的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都創(chuàng)新互聯(lián)科技有限公司,經過多年的不懈努力,公司現(xiàn)已經成為一家專業(yè)從事IT產品開發(fā)和營銷公司。廣泛應用于計算機網(wǎng)絡、設計、SEO優(yōu)化、關鍵詞排名等多種行業(yè)!
文章名稱:Android如何對查詢的數(shù)據(jù)庫進行排序(android查詢數(shù)據(jù)庫排序)
本文網(wǎng)址:http://www.5511xx.com/article/dpdhjcc.html


咨詢
建站咨詢
