gpt4 book ai didi

Android Room 按别名排序

转载 作者:行者123 更新时间:2023-11-29 18:49:52 24 4
gpt4 key购买 nike

我想根据我创建的自定义别名来订购我的数据集。我试过了,但它会导致语法错误。我做错了什么?

代码:

@Query("SELECT a/b as ratio " +
"FROM dataset " +
"where my_status = :myStatus " +
"order by ratio ASC")

无法在按部分排序中找到比率。

最佳答案

问题是 Room 在编译时根据您的实体生成您的 SQL 查询。因此,Room 只能识别您实体中指定的列名。

例如,如果您有一个实体 Employee:

@Entity(tableName = "employee_table")
public class Employee {
private String firstName;
private String lastName;
private double monthlySalary;
}

如果你想计算年薪或日薪或其他东西,那么你可以在 Employee (private double mathResult) 中添加一个额外的列,然后将其用作别名:

@Dao
public interface EmployeeDao {
@Query("select firstName, lastName, monthlySalary, monthlySalary*12 as mathResult from user_table order by mathResult asc")
LiveData<List<Employee>> getUsers();
}

关于Android Room 按别名排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51144014/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com