【问题标题】:Returning List<Object> to variables;将 List<Object> 返回给变量;
【发布时间】:2021-09-29 05:36:56
【问题描述】:

我正在做一个房间数据库


    @Query("SELECT distinct UserID FROM USER WHERE CovidStat=='T'")
    public List<USER> checkCovid();

    @Query("SELECT DISTINCT PID,VisitDate FROM USER_PLACE,USER WHERE User.UserID=USER_PLACE.UID AND UID=(:UID)")
    int selectCovidPlace(int UID);

我希望 checkCovid() 返回 UserID where CovidStat='T' 并且我想将 ID 放入 selectCovidPlace 以识别该 ID 去过的地方。问题是 checkCovid 会返回一个列表而不是 1 个变量,因为它不仅有 1 个拥有 CovidStat='T' 的人,而且我不确定如何将列表放入 selectCovidPlace()。

【问题讨论】:

    标签: java database sqlite android-studio-2.2


    【解决方案1】:

    我不熟悉 SQLite。但是 SQL 语法应该是通用的。

    使用IN 语句怎么样?

    喜欢这个... WHERE User.UserID=USER_PLACE.UID AND UID IN (:UID)")

    然后你可以传递List作为参数。

    【讨论】:

      【解决方案2】:

      这里你应该使用IN clause,如下:

       @Query("SELECT DISTINCT PID,VisitDate FROM USER_PLACE,USER WHERE User.UserID=USER_PLACE.UID AND UID IN (:UIDs)")
          int selectCovidPlace(List<Integer> UIDs);
      

      【讨论】:

        猜你喜欢
        • 2021-09-14
        • 2015-08-13
        • 2022-07-11
        • 2016-06-13
        • 2022-09-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多