Как преобразовать этот запрос в rethinkdb?

Я застрял, чтобы преобразовать этот запрос postgresql в gorethink, вы можете мне помочь? Я хотел бы получить в результате json: {"running": "true"}

      _, err = tx.Select(
        "count(id) > 0 AS running",
    ).From("audits").Where("state = 'started'").Load(&auditStatusResult)

Я уже пробовал:

      result, err := r.Table("audits").Filter(r.Row.Field("state").Eq("started")).WithFields("id").Map(map[string]interface{}{
        "running": r.Row.Field("id").Count().Gt(0)},
    ).Run(h.RDB)

Но это не ожидаемое поведение, потому что оно работает с каждым значением поля.

РЕДАКТИРОВАТЬ :

Наконец, я нашел свой ответ, выполнив следующие действия:

      result, err := r.Branch(
        r.Table("audits").Filter(r.Row.Field("state").Eq("started")).Count().Gt(0),
        r.Expr(
            map[string]bool{
                "running": true,
            }),
        r.Expr(
            map[string]bool{
                "running": false,
            },
        ),
    ).Run(h.RDB)

0 ответов

Другие вопросы по тегам