Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data JoinLeftProperty j f b backend n c = JLeft (f backend n c)
- data JoinRightProperty j f a backend n c = JRight (f backend n c)
- data LeftJoin a b = LeftJoin a (Maybe b)
- data RightJoin a b = RightJoin (Maybe a) b
- data InnerJoin a b = InnerJoin a b
- data FullJoin a b = FullJoin (Maybe a) (Maybe b)
- type JoinRelation backend k l a = backend -> Relation backend k l a
- selectJoin :: (MonadSelect backend m, Storable backend k l (f a b), FromRow backend (k :+ l) (Entity (f a b))) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> SelectClauses backend (f a b) -> m [Entity (f a b)]
- selectJoin_ :: (MonadSelect backend m, Storable backend k l (f a b), FromRow backend (k :+ l) (Entity (f a b))) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> m [Entity (f a b)]
- countJoin :: (MonadSelect backend m, Storable backend k l (f a b)) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> m Integer
- leftJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (LeftJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (LeftJoin a b)
- leftJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (LeftJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (LeftJoin a b)
- rightJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (RightJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (RightJoin a b)
- rightJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (RightJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (RightJoin a b)
- innerJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (InnerJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (InnerJoin a b)
- innerJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (InnerJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (InnerJoin a b)
- fullJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (FullJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (FullJoin a b)
- fullJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (FullJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (FullJoin a b)
Documentation
data JoinLeftProperty j f b backend n c Source #
JLeft (f backend n c) |
Property backend a f => Property backend (j a b) (JoinLeftProperty j f b) Source # | |
data JoinRightProperty j f a backend n c Source #
JRight (f backend n c) |
Property backend b f => Property backend (j a b) (JoinRightProperty j f a) Source # | |
(Storable backend k l a, Storable backend i j b, (~) Nat ((:+) k i) g, (~) Nat ((:+) l j) h, Typeable Nat g, Typeable Nat h) => Storable backend g h (LeftJoin a b) Source # | |
(FromRow backend k (EntityID a), FromRow backend l (Maybe (EntityID b)), (~) Nat ((:+) k l) i) => FromRow backend i (EntityID (LeftJoin a b)) Source # | |
(FromRow backend k a, FromRow backend l (Maybe b), (~) Nat ((:+) k l) i) => FromRow backend i (LeftJoin a b) Source # | |
(Eq (EntityID a), Eq (EntityID b)) => Eq (EntityID (LeftJoin a b)) Source # | |
(Show (EntityID a), Show (EntityID b)) => Show (EntityID (LeftJoin a b)) Source # | |
(Eq b, Eq a) => Eq (LeftJoin a b) Source # | |
(Show b, Show a) => Show (LeftJoin a b) Source # | |
Generic (LeftJoin a b) Source # | |
type Rep (LeftJoin a b) Source # | |
data EntityID (LeftJoin a b) Source # | |
(Storable backend k l a, Storable backend i j b, (~) Nat ((:+) k i) g, (~) Nat ((:+) l j) h, Typeable Nat g, Typeable Nat h) => Storable backend g h (RightJoin a b) Source # | |
(FromRow backend k (Maybe (EntityID a)), FromRow backend l (EntityID b), (~) Nat ((:+) k l) i) => FromRow backend i (EntityID (RightJoin a b)) Source # | |
(FromRow backend k (Maybe a), FromRow backend l b, (~) Nat ((:+) k l) i) => FromRow backend i (RightJoin a b) Source # | |
(Eq (EntityID a), Eq (EntityID b)) => Eq (EntityID (RightJoin a b)) Source # | |
(Show (EntityID a), Show (EntityID b)) => Show (EntityID (RightJoin a b)) Source # | |
(Eq b, Eq a) => Eq (RightJoin a b) Source # | |
(Show b, Show a) => Show (RightJoin a b) Source # | |
data EntityID (RightJoin a b) Source # | |
InnerJoin a b |
(Storable backend k l a, Storable backend i j b, (~) Nat ((:+) k i) g, (~) Nat ((:+) l j) h, Typeable Nat g, Typeable Nat h) => Storable backend g h (InnerJoin a b) Source # | |
(FromRow backend k (EntityID a), FromRow backend l (EntityID b), (~) Nat ((:+) k l) i) => FromRow backend i (EntityID (InnerJoin a b)) Source # | |
(FromRow backend k a, FromRow backend l b, (~) Nat ((:+) k l) i) => FromRow backend i (InnerJoin a b) Source # | |
(Eq (EntityID a), Eq (EntityID b)) => Eq (EntityID (InnerJoin a b)) Source # | |
(Show (EntityID a), Show (EntityID b)) => Show (EntityID (InnerJoin a b)) Source # | |
(Eq b, Eq a) => Eq (InnerJoin a b) Source # | |
(Show b, Show a) => Show (InnerJoin a b) Source # | |
data EntityID (InnerJoin a b) Source # | |
(Storable backend k l a, Storable backend i j b, (~) Nat ((:+) k i) g, (~) Nat ((:+) l j) h, Typeable Nat g, Typeable Nat h) => Storable backend g h (FullJoin a b) Source # | |
(FromRow backend k (Maybe (EntityID a)), FromRow backend l (Maybe (EntityID b)), (~) Nat ((:+) k l) i) => FromRow backend i (EntityID (FullJoin a b)) Source # | |
(FromRow backend k (Maybe a), FromRow backend l (Maybe b), (~) Nat ((:+) k l) i) => FromRow backend i (FullJoin a b) Source # | |
(Eq (EntityID a), Eq (EntityID b)) => Eq (EntityID (FullJoin a b)) Source # | |
(Show (EntityID a), Show (EntityID b)) => Show (EntityID (FullJoin a b)) Source # | |
(Eq b, Eq a) => Eq (FullJoin a b) Source # | |
(Show b, Show a) => Show (FullJoin a b) Source # | |
data EntityID (FullJoin a b) Source # | |
type JoinRelation backend k l a = backend -> Relation backend k l a Source #
selectJoin :: (MonadSelect backend m, Storable backend k l (f a b), FromRow backend (k :+ l) (Entity (f a b))) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> SelectClauses backend (f a b) -> m [Entity (f a b)] Source #
Send a SELECT
query on a JOIN
.
selectJoin_ :: (MonadSelect backend m, Storable backend k l (f a b), FromRow backend (k :+ l) (Entity (f a b))) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> m [Entity (f a b)] Source #
countJoin :: (MonadSelect backend m, Storable backend k l (f a b)) => JoinRelation backend k l (f a b) -> Condition backend (f a b) -> m Integer Source #
leftJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (LeftJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (LeftJoin a b) Source #
leftJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (LeftJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (LeftJoin a b) Source #
rightJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (RightJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (RightJoin a b) Source #
rightJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (RightJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (RightJoin a b) Source #
innerJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (InnerJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (InnerJoin a b) Source #
innerJoin_ :: (Storable backend k l a, Storable backend i j b) => Condition backend (InnerJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (InnerJoin a b) Source #
fullJoin :: JoinRelation backend k l a -> JoinRelation backend i j b -> Condition backend (FullJoin a b) -> JoinRelation backend (k :+ i) (l :+ j) (FullJoin a b) Source #