我需要使用Android Room进行选择查询。 我有一个包含3列的表格:“ id”,“ pathOfFile”,“ rank” “ pathOfFile”就像“ file:///path/to/file.png”
我想选择所有文件的姓氏等于“ file.png”的路径
我写这个
SELECT pathOfFile
FROM FilePaths
WHERE replace(pathOfFile, rtrim(pathOfFile, replace(pathOfFile, '/', '')), '') in ("file.png", ....)
ORDER BY rank
如果我在PC上的SqliteBrowser上执行此查询,则没有问题。 当我写
@Query(SELECT pathOfFile FROM FilePaths WHERE replace(pathOfFile, rtrim(pathOfFile, replace(pathOfFile, '/', '')), '') in (:filePaths) ORDER BY rank
Android Studio在WHERE关键字后给我一个错误“期望,得到'替换'”。
如何在这样的数据库上进行查询?
答案 0 :(得分:0)
您能简化为这个房间查询吗?
SELECT pathOfFile
FROM FilePaths
WHERE pathOfFile LIKE :filePath
ORDER BY rank
......其中参数filePath作为"%" + actualFilePathEnding
传递
答案 1 :(得分:0)
好的,我发现了问题。似乎是android studio编辑器的错误。
编辑器给我一个“替换”关键字错误,但是当我单击“运行”时,构建成功。