# Pastebin udyDnUP6 $ perl6 -Ilib -e ' use Red; model M is table { has Str $.a is column; has Int $.b is column; has Str $.c is column; has Str $.d is column; } my $*RED-DB = database "SQLite"; M.^create-table; my $*RED-DEBUG = True; say M.^all.map: { .b < 10 ?? .b > 2 ?? .a !! .c !! .d if .d } ' SQL : SELECT CASE WHEN (b < 10 AND (d <> 0 AND d IS NOT NULL)) AND b <= 2 THEN c WHEN (b > 2 AND b >= 10) AND (d <> 0 AND d IS NOT NULL) THEN d WHEN (b > 2 AND (d <> 0 AND d IS NOT NULL)) AND b < 10 THEN a WHEN ((d <> 0 AND d IS NOT NULL) AND b >= 10) AND b <= 2 THEN d END as "data" FROM mmm WHERE ((((b <= 2 AND (d == 0 OR d IS NULL)) AND b < 10) OR (((d == 0 OR d IS NULL) AND b >= 10) AND b > 2)) OR (((d == 0 OR d IS NULL) AND b < 10) AND b > 2)) OR ((b <= 2 AND (d == 0 OR d IS NULL)) AND b >= 10) ()