在一个查询中删除两个表而不连接

mec1mxoz  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(326)

我有两张table

@Entity
data class Pet(val name, val creationTime)

@Entity
data class Item(val creationTime)

这两个实体是不相关的。
我想做一个查询,从两个表中删除 creationTime . 我该怎么做?

@Dao
interface Organizer {
    @Query("") 
    fun deleteAllTables(val creationTime)
}
qltillow

qltillow1#

作为多功能查询的一个选项,您可以在一个事务(文档)中使用两个查询。
我想逻辑上和你想的一样。

@Dao
interface Organizer {
    @Query("delete from pets where creationTime := creationTime") 
    fun deletePets(val creationTime)

    @Query("delete from items where creationTime := creationTime") 
    fun deleteItems(val creationTime)

    @Transaction
    fun deleteAllTables(val creationTime) { 
        deletePets(creationTime)
        deleteItems(creationTime)
    }
}

相关问题