Advertisement
Guest User

Untitled

a guest
Jan 30th, 2015
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.68 KB | None | 0 0
  1. implicit class QueryExtension2[T, E](val query1: Query[T, E, Seq]) {
  2.     def left[T2, E2](query2: Query[T2, E2, Seq])(implicit condition: (T, T2) => Column[Boolean]): Query[(T, T2), (E, E2), Seq] =
  3.       query1.leftJoin(query2).on(condition)
  4.   }
  5.  
  6.  
  7.  implicit def joinCondition1 = (r: Radnik, rp: Radproj) => r.mbr === rp.mbr
  8.   implicit def joinCondition2 = (join: (Radnik, Radproj), p: Projekat) => join._2.spr === p.spr
  9.  
  10.  
  11.  val query5 = for {
  12.    ((r, rp), p) <- Radnik left Radproj  left Projekat
  13.    if ime.map(r.ime === _).getOrElse(r.ime =!= "") && prz.map(r.prz === _).getOrElse(r.prz =!= "")
  14.    || spr.map(rp.spr ===_).getOrElse(rp.spr =!= -1)
  15.  } yield (r.ime, r.prz, p.nap)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement