@@ -436,9 +436,17 @@ module.exports =
436
436
}
437
437
438
438
if ( op === '==' || op === '===' ) {
439
- query = query . where ( field , v ) ;
439
+ if ( v === null ) {
440
+ query = query . whereNull ( field ) ;
441
+ } else {
442
+ query = query . where ( field , v ) ;
443
+ }
440
444
} else if ( op === '!=' || op === '!==' ) {
441
- query = query . where ( field , '!=' , v ) ;
445
+ if ( v === null ) {
446
+ query = query . whereNotNull ( field ) ;
447
+ } else {
448
+ query = query . where ( field , '!=' , v ) ;
449
+ }
442
450
} else if ( op === '>' ) {
443
451
query = query . where ( field , '>' , v ) ;
444
452
} else if ( op === '>=' ) {
@@ -496,9 +504,17 @@ module.exports =
496
504
} else if ( op === 'like' ) {
497
505
query = query . where ( field , 'like' , v ) ;
498
506
} else if ( op === '|==' || op === '|===' ) {
499
- query = query . orWhere ( field , v ) ;
507
+ if ( v === null ) {
508
+ query = query . orWhereNull ( field ) ;
509
+ } else {
510
+ query = query . orWhere ( field , v ) ;
511
+ }
500
512
} else if ( op === '|!=' || op === '|!==' ) {
501
- query = query . orWhere ( field , '!=' , v ) ;
513
+ if ( v === null ) {
514
+ query = query . orWhereNotNull ( field ) ;
515
+ } else {
516
+ query = query . orWhere ( field , '!=' , v ) ;
517
+ }
502
518
} else if ( op === '|>' ) {
503
519
query = query . orWhere ( field , '>' , v ) ;
504
520
} else if ( op === '|>=' ) {
0 commit comments