Skip to content

Commit fd88c90

Browse files
committed
Fix comparisions with nullable columns
1 parent f59f0f4 commit fd88c90

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

src/Droplet/Language/Internal/Condition.purs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,12 @@ else instance
7979
-- | Whether expression can be compared
8080
class Comparison (cType) (fieldsRow Type) (aliasSymbol) (tType) | c fields t
8181

82-
instance (Cons name t d fields, UnwrapDefinition t u) Comparison (Proxy name) fields alias u
82+
instance
83+
( Cons name t d fields
84+
, UnwrapDefinition t u
85+
, UnwrapNullable u v
86+
)
87+
Comparison (Proxy name) fields alias v
8388

8489
else instance
8590
( Cons name t d fields

test/Where.purs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@ tests = do
3434
let q = select sender # from messages # wher (recipient .<=. 2)
3535
TM.parameterized """SELECT "sender" FROM "messages" WHERE "recipient" <= $1""" $ DLIQ.buildQuery q
3636
TM.result q [ { sender: 1}, { sender: 2 } ]
37+
TS.it "nullable" do
38+
let q = select _by # from tags # wher (_by .=. 2)
39+
TM.parameterized """SELECT "by" FROM "tags" WHERE "by" = $1""" $ DLIQ.buildQuery q
40+
TM.result q [ ]
3741

3842
TS.describe "compared to field" do
3943
TS.it "equals" do

0 commit comments

Comments
 (0)