字符串排序基于该String上的数字

时间:2018-04-11 06:16:49

标签: java android mysql sorting

我的SQL数据库中有一些数据,如

  • 1组1
  • 2第1组
  • 11第1组
  • 1组2
  • 1第11组

我正在查询

String sortOrder = WiSeGroupContract.ColumnEntry.COLUMN_NAME_NAME + " COLLATE NOCASE";

contentResolver.query(WiSeGroupContract.ColumnEntry.CONTENT_URI,
            null,
            null,
            sortOrder,
            from,
            limit);

我得到的输出就像

  • 1组1
  • 1第11组
  • 1组2
  • 11第1组
  • 2第1组

但我想要这样

  • 1组1
  • 1组2
  • 1第11组
  • 2第1组
  • 11第1组

基于字符串中的数字排序。它应该按字母顺序排列,也可以按数字的升序排列。

在iOS中,数据库排序将提供所需的输出。

if(!sortDescriptors)
{
    sortDescriptors = [NSArray arrayWithObject:[[NSSortDescriptor alloc] initWithKey:EntityAttributeName ascending:YES]];
}
[self groupWithPredicate :predicate sortDescriptors :sortDescriptors start :start limit :limit];

那么有没有可用的机制呢?或者在获取数据后,我是否需要再次排序?

使用这种排序机制,他们如何从数据库中获取数据的速度非常快?

0 个答案:

没有答案