digraph { graph [rankdir = "LR", label = "Plan Tree: SELECT x, y FROM pair WHERE CASE WHEN x > 0 THEN y/x > 1.5 WHEN x < 0 THEN y/x < 1.5 ELSE false END;"] node [shape=record,style=filled,fillcolor=gray95] edge [arrowtail=empty] 38[label = " Alias (38)|aliasname: pair| colnames: "] 40[label = " String (40)|x"] 39[label = " List (39)|<1> [0]|<2> [1]"] 41[label = " String (41)|y"] 2[label = " SeqScan (2)|startup_cost: 0.00|total_cost: 63.50|plan_rows: 1070|plan_width: 8| targetlist: | qual: |extParam: (b)|allParam: (b)|scanrelid: 1"] 37[label = " RangeTblEntry(RTE) (37)| eref: |rtekind: RTE_RELATION|relid: 41024|relkind: 114|inh: false|inFromCl: true|requiredPerms: 2|selectedCols: (b 9 10)|modifiedCols: (b)"] 36[label = " List (36)|<1> [0]"] 42[label = " OidList (42)|41024 "] 1[label = " PlannedStmt (1)|commandType: CMD_SELECT|queryId: 0|hasReturning: false|hasModifyingCTE: false|canSetTag: true|transientPlan: false| planTree: | rtable: |rewindPlanIDs: (b)| relationOids: |nParamExec: 0"] 38:colnames -> 39:head [headlabel = "38", taillabel = "39"] 39:1 -> 40:head [headlabel = "39", taillabel = "40"] 39:2 -> 41:head [headlabel = "39", taillabel = "41"] 2:targetlist -> 3:head [headlabel = "2", taillabel = "3"] 2:qual -> 8:head [headlabel = "2", taillabel = "8"] 37:eref -> 38:head [headlabel = "37", taillabel = "38"] 36:1 -> 37:head [headlabel = "36", taillabel = "37"] 1:planTree -> 2:head [headlabel = "1", taillabel = "2"] 1:rtable -> 36:head [headlabel = "1", taillabel = "36"] 1:relationOids -> 42:head [headlabel = "1", taillabel = "42"] subgraph cluster_0 { label = "Target List"; 4[label = " TargetEntry (4)| expr: |resno: 1|resname: x|resorigtbl: 41024|resorigcol: 1|resjunk: false"] 5[label = " Var (5)|varno: 1|varattno: 1|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 1|location: 7"] 3[label = " List (3)|<1> [0]|<2> [1]"] 6[label = " TargetEntry (6)| expr: |resno: 2|resname: y|resorigtbl: 41024|resorigcol: 2|resjunk: false"] 7[label = " Var (7)|varno: 1|varattno: 2|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 2|location: 10"] 4:expr -> 5:head [headlabel = "4", taillabel = "5"] 3:1 -> 4:head [headlabel = "3", taillabel = "4"] 3:2 -> 6:head [headlabel = "3", taillabel = "6"] 6:expr -> 7:head [headlabel = "6", taillabel = "7"] } subgraph cluster_1 { label = "Express Tree"; 14[label = " Var (14)|varno: 1|varattno: 1|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 1|location: 38"] 13[label = " List (13)|<1> [0]|<2> [1]"] 15[label = " Const (15)|consttype: 701|consttypmod: -1|constlen: 8|constbyval: true|constisnull: false"] 12[label = " OpExpr (12)|opno: 1123|opfuncid: 303|opresulttype: 16|opretset: false| args: |location: 40"] 20[label = " Var (20)|varno: 1|varattno: 2|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 2|location: 49"] 19[label = " List (19)|<1> [0]|<2> [1]"] 21[label = " Var (21)|varno: 1|varattno: 1|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 1|location: 51"] 18[label = " OpExpr (18)|opno: 588|opfuncid: 203|opresulttype: 700|opretset: false| args: |location: 50"] 17[label = " List (17)|<1> [0]|<2> [1]"] 22[label = " Const (22)|consttype: 701|consttypmod: -1|constlen: 8|constbyval: true|constisnull: false"] 16[label = " OpExpr (16)|opno: 1123|opfuncid: 303|opresulttype: 16|opretset: false| args: |location: 53"] 11[label = " CaseWhen (11)| expr: | result: |location: 33"] 10[label = " List (10)|<1> [0]|<2> [1]"] 26[label = " Var (26)|varno: 1|varattno: 1|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 1|location: 64"] 25[label = " List (25)|<1> [0]|<2> [1]"] 27[label = " Const (27)|consttype: 701|consttypmod: -1|constlen: 8|constbyval: true|constisnull: false"] 24[label = " OpExpr (24)|opno: 1122|opfuncid: 301|opresulttype: 16|opretset: false| args: |location: 66"] 32[label = " Var (32)|varno: 1|varattno: 2|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 2|location: 75"] 31[label = " List (31)|<1> [0]|<2> [1]"] 33[label = " Var (33)|varno: 1|varattno: 1|vartype: 700|vartypmod: -1|varlevelsup: 0|varnoold: 1|varoattno: 1|location: 77"] 30[label = " OpExpr (30)|opno: 588|opfuncid: 203|opresulttype: 700|opretset: false| args: |location: 76"] 29[label = " List (29)|<1> [0]|<2> [1]"] 34[label = " Const (34)|consttype: 701|consttypmod: -1|constlen: 8|constbyval: true|constisnull: false"] 28[label = " OpExpr (28)|opno: 1122|opfuncid: 301|opresulttype: 16|opretset: false| args: |location: 79"] 23[label = " CaseWhen (23)| expr: | result: |location: 59"] 35[label = " Const (35)|consttype: 16|consttypmod: -1|constlen: 1|constbyval: true|constisnull: false|location: 90"] 9[label = " CaseExpr (9)|casetype: 16| args: | defresult: |location: 28"] 8[label = " List (8)|<1> [0]"] 13:1 -> 14:head [headlabel = "13", taillabel = "14"] 13:2 -> 15:head [headlabel = "13", taillabel = "15"] 12:args -> 13:head [headlabel = "12", taillabel = "13"] 19:1 -> 20:head [headlabel = "19", taillabel = "20"] 19:2 -> 21:head [headlabel = "19", taillabel = "21"] 18:args -> 19:head [headlabel = "18", taillabel = "19"] 17:1 -> 18:head [headlabel = "17", taillabel = "18"] 17:2 -> 22:head [headlabel = "17", taillabel = "22"] 16:args -> 17:head [headlabel = "16", taillabel = "17"] 11:expr -> 12:head [headlabel = "11", taillabel = "12"] 11:result -> 16:head [headlabel = "11", taillabel = "16"] 10:1 -> 11:head [headlabel = "10", taillabel = "11"] 10:2 -> 23:head [headlabel = "10", taillabel = "23"] 25:1 -> 26:head [headlabel = "25", taillabel = "26"] 25:2 -> 27:head [headlabel = "25", taillabel = "27"] 24:args -> 25:head [headlabel = "24", taillabel = "25"] 31:1 -> 32:head [headlabel = "31", taillabel = "32"] 31:2 -> 33:head [headlabel = "31", taillabel = "33"] 30:args -> 31:head [headlabel = "30", taillabel = "31"] 29:1 -> 30:head [headlabel = "29", taillabel = "30"] 29:2 -> 34:head [headlabel = "29", taillabel = "34"] 28:args -> 29:head [headlabel = "28", taillabel = "29"] 23:expr -> 24:head [headlabel = "23", taillabel = "24"] 23:result -> 28:head [headlabel = "23", taillabel = "28"] 9:args -> 10:head [headlabel = "9", taillabel = "10"] 9:defresult -> 35:head [headlabel = "9", taillabel = "35"] 8:1 -> 9:head [headlabel = "8", taillabel = "9"] } }