如何根据字母顺序从数据库中获取值以在列表视图中设置值

How to get values from database to set valies ina list view according to alpherbatical order

到目前为止,这是我将值从数据库检索到列表视图的代码。我需要让它们按字母顺序出现。我应该如何更改此代码?请帮忙!

  public List<Units> getAllUnit() {
          List<Units> unit = new ArrayList<Units>();

          SQLiteDatabase db = getWritableDatabase();
         Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_UNITS,  null);

         if (cursor.moveToFirst()) {
              do {
                unit.add(new Units(Integer.parseInt(cursor.getString(0)) , cursor.getString(1), cursor.getString(2), cursor.getString(3)));
        }
             while (cursor.moveToNext());
         }
         cursor.close();
         db.close();
         return unit;
      }

您可以这样使用您的查询:

db.rawQuery("SELECT *
        FROM " +tableName +" ORDER BY " +yourcolumnName+ " DESC", null);

希望对您有所帮助。

试试这个 SELECT * FROM TABLE_UNITS ORDER BY YOUR_COLUMN_NAME;

您可以在 ORDER BY 之后使用 ASCDESC 命令,以便根据您的要求获取数据,即您希望按字母顺序或反向字母顺序显示。

您可以使用这段代码按字母顺序对列表进行排序。 object2.yourparameter 是您要订购的参数。

Collections.sort(unit, new Comparator<Units>()
            {
                @Override
                public int compare(final Units object1, final Units object2)
                {
                    return object1.name.compareTo(object2.yourparameter);
                }
            });

或者您可以像上面所说的那样更改您的查询