Allo wildcards when searching by attachment ids

This commit is contained in:
eikek
2021-07-31 01:23:37 +02:00
parent 860e146bf0
commit 1256a6e8cf
3 changed files with 42 additions and 7 deletions

View File

@ -171,12 +171,16 @@ object ItemQueryGenerator {
tables.item.id.in(select.withSelect(Nel.of(RItem.as("i").id.s)))
case Expr.AttachId(id) =>
tables.item.id.in(
Select(
select(RAttachment.T.itemId),
from(RAttachment.T),
val idWildcard = QueryWildcard(id)
val query =
if (id == idWildcard) {
RAttachment.T.id.cast[String] === id
).distinct
} else {
RAttachment.T.id.cast[String].like(idWildcard)
}
tables.item.id.in(
Select(select(RAttachment.T.itemId), from(RAttachment.T), query).distinct
)
case Expr.Fulltext(_) =>