【问题标题】:What does it mean SELECT EXISTS (SELECT 1 FROM favoritelist WHERE id=:id)SELECT EXISTS (SELECT 1 FROM favoritelist WHERE id=:id) 是什么意思
【发布时间】:2020-08-15 09:48:46
【问题描述】:

SELECT EXISTS (SELECT 1 FROM favoritelist WHERE id=:id)在中是什么意思:

@Query("SELECT EXISTS (SELECT 1 FROM favoritelist WHERE id=:id)")
public int  isFavorite(int id);

【问题讨论】:

    标签: mysql sql database sqlite android-studio


    【解决方案1】:
    SELECT EXISTS (SELECT 1 FROM favoritelist WHERE id=:id)
    

    exists 条件评估favoritelist 中是否至少存在一行,其中id 与给定参数匹配。外部查询在数字上下文中评估条件,如果满足条件则返回1,否则返回0。

    简而言之:

    • 如果favoritelist中至少有一条记录,其id与参数匹配,则查询返回1

    • 否则返回0

    【讨论】:

      【解决方案2】:

      SQL 代码是一个查询,返回 true 或 false 取决于 id 等于 :id 的元素(这是执行查询时需要绑定的参数)是否存在于表“favoritelist”或不是。

      这里它用于@Query annotation 并指定在调用isFavorite 方法时运行的SQL 查询 - 该方法的id 参数绑定到查询中的:id 参数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-09-27
        • 2014-01-27
        • 1970-01-01
        • 1970-01-01
        • 2020-02-11
        • 2013-06-01
        • 1970-01-01
        相关资源
        最近更新 更多