Оставлено JOIN с предложением AND в ON с scalikejdbc

Итак, у меня есть этот sql (часть гораздо большего запроса):

from Person p left join ForeignCredentials fc on fc.person_id = p.id and fc.type = 'FACEBOOK'

и я пытаюсь представить это в scalalikejdbc следующим образом:

select.from(Person as p).leftJoin(ForeignCredential as fc).on(fc.`person_id`, p.id)

Но я не могу понять, как добавить дополнительное условие. Интуитивный способ:

    select.from(Person as p).leftJoin(ForeignCredential as fc).on(fc.`person_id`, p.id)
.and.eq(fc.`type`, "FACEBOOK").

Итак, как мне это сделать?


person jakob    schedule 31.08.2015    source источник


Ответы (1)


Следующее должно работать для вас.

on(sqls.eq(fc.`person_id`, p.id).and.eq(fc.`type`, "FACEBOOK")) 

https://github.com/scalikejdbc/scalikejdbc/blob/2.2.8/scalikejdbc-interpolation/src/main/scala/scalikejdbc/QueryDSLFeature.scala#L408-L411

person Kazuhiro Sera    schedule 06.09.2015