Slide 27
Slide 27 text
範囲型の演算を追加
class ContainsOp(expr1: Expression<*>, expr2: Expression<*>) : ComparisonOp(expr1, expr2, "@>")
class ContainedByOp(expr1: Expression<*>, expr2: Expression<*>) : ComparisonOp(expr1, expr2, "<@")
class OverlapsOp(expr1: Expression<*>, expr2: Expression<*>) : ComparisonOp(expr1, expr2, "&&")
infix fun ExpressionWithColumnType.contains(other: Expression) =
ContainsOp(this, other)
infix fun ExpressionWithColumnType.contains(other: DateTime) =
ContainsOp(this, QueryParameter(other, TimestampColumnType()))
Member.find { Members.valid contains DateTime.now() }.toList()
SELECT * FROM members WHERE valid @> '2022-09-02T12:34:56.000Z'
@chimerast