お世話になります。

scala + scalikejdbc を使っていますが、次のようなSQLをQueryDSLに直す場合の
処理がいまいちわかりません。

SELECT
    a.id, a.date, a.code, b.score
FROM
    source as a
LEFT JOIN
    data as b 
    ON b.code = a.code 
    AND b.date = (
        select date from data where code = a.code order by date desc limit 1
    )

のような書き方になった場合、最後の3行の

    AND b.date = (
        select date from data where code = a.code order by date desc limit 1
    )

部分がどのように表現したらよいかわかりません。

select(a.result.id, a.result.date, a.result.code, b.result.score)
    .from(source as a)
    .leftJoin(data as b).on(
         sqls.eq(b.code, a.code).and.eq(b.date, ?????)
    )

という感じのようになるとおもうのですが、???? の部分を記述しようとおもったところ
ここで分からなくなってしまっています。

初心者すぎる質問で申し訳ないのですが、どなたか教えていただけないでしょうか?

よろしくお願いいたします。