按多个字段排序(排序规则)

时间:2020-08-05 03:59:18

标签: objectbox

在我的对象框模型类中,我有2个字段:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:layout_gravity="center_vertical"
    android:orientation="vertical"
    android:id="@+id/root_view"
    tools:context=".MainActivity">

</LinearLayout>

某些元素的两个字段均已填充,而其他元素的dateModified不为null,dateTaken为null。我想按dateTaken排序查询结果(如果不为null),否则按dateModified排序。是否可以通过Objectbox查询(即某种排序规则)来做到这一点?

1 个答案:

答案 0 :(得分:1)

如果您不介意在Java / Kotlin方面进行此操作,则可以使用QueryBuilder.sort(comparator)进行此操作。

自从实现比较器以来,就可以根据自己的喜好进行排序。伪代码示例:

dateThis = x.date1 != null? x.date1: x.data2
dateOther = y.date1 != null? y.date1: y.data2
return dateThis.compareTo(dateOther)