Handle NULL result in avg_ too.
This commit is contained in:
parent
068ec9b1ae
commit
e77e056f5b
@ -43,7 +43,8 @@ module Database.Esqueleto
|
|||||||
, val, isNothing, just, nothing, joinV, countRows, count, not_
|
, val, isNothing, just, nothing, joinV, countRows, count, not_
|
||||||
, (==.), (>=.), (>.), (<=.), (<.), (!=.), (&&.), (||.)
|
, (==.), (>=.), (>.), (<=.), (<.), (!=.), (&&.), (||.)
|
||||||
, (+.), (-.), (/.), (*.)
|
, (+.), (-.), (/.), (*.)
|
||||||
, random_, sum_, round_, ceiling_, floor_, avg_, min_, max_
|
, random_, round_, ceiling_, floor_
|
||||||
|
, min_, max_,_sum_, avg_,
|
||||||
, like, (%), concat_, (++.)
|
, like, (%), concat_, (++.)
|
||||||
, subList_select, subList_selectDistinct, valList
|
, subList_select, subList_selectDistinct, valList
|
||||||
, in_, notIn, exists, notExists
|
, in_, notIn, exists, notExists
|
||||||
|
|||||||
@ -240,10 +240,11 @@ class (Functor query, Applicative query, Monad query) =>
|
|||||||
round_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
round_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
||||||
ceiling_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
ceiling_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
||||||
floor_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
floor_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
||||||
|
|
||||||
sum_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
sum_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
||||||
min_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
min_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
||||||
max_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
max_ :: (PersistField a) => expr (Value a) -> expr (Value (Maybe a))
|
||||||
avg_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value b)
|
avg_ :: (PersistField a, PersistField b) => expr (Value a) -> expr (Value (Maybe b))
|
||||||
|
|
||||||
-- | @LIKE@ operator.
|
-- | @LIKE@ operator.
|
||||||
like :: (PersistField s, IsString s) => expr (Value s) -> expr (Value s) -> expr (Value Bool)
|
like :: (PersistField s, IsString s) => expr (Value s) -> expr (Value s) -> expr (Value Bool)
|
||||||
|
|||||||
@ -285,8 +285,8 @@ main = do
|
|||||||
_ <- insert' p4
|
_ <- insert' p4
|
||||||
ret <- select $
|
ret <- select $
|
||||||
from $ \p->
|
from $ \p->
|
||||||
return $ avg_ (p ^. PersonAge)
|
return $ joinV $ avg_ (p ^. PersonAge)
|
||||||
liftIO $ ret `shouldBe` [ Value ((36 + 17 + 17) / 3 :: Double) ]
|
liftIO $ ret `shouldBe` [ Value $ Just ((36 + 17 + 17) / 3 :: Double) ]
|
||||||
|
|
||||||
it "works with min_" $
|
it "works with min_" $
|
||||||
run $ do
|
run $ do
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user