0

我有一个关于从几个表中选择的问题。

例如,我有 3 个依赖表并想要选择数据。使用连接方法

  val q = tableQ
      .join(t1)
      .join(t2)
      .join(t3)
      //exclude myself
      .filter(el => el._1._2._1.id =!= el._1._1._1.id)
...

看起来很丑。可以 slick 3 使用子查询之类的东西。

例如

tableQ.filter(el => t1.filter(...)).filter(el => t2.filter(...))

BR!

4

1 回答 1

0

也许单子加入

?

val monadicInnerJoin = for {
  c <- coffees
  s <- suppliers if c.supID === s.id
} yield (c.name, s.name)

你可以尝试类似的东西

val monadicInnerJoin = for {
  c <- coffees
  s <- suppliers filter(_.x === y) if(condition)
} yield (c.name, s.name)
于 2015-08-27T12:46:02.377 回答