START TRANSACTION; auto commit mode: off EXPLAIN select l_orderkey, sum(l_extendedprice * (1 - l_discount)) as revenue, o_orderdate, o_shippriority from customer, orders, lineitem where c_mktsegment = 'MACHINERY' and c_custkey = o_custkey and l_orderkey = o_orderkey and o_orderdate < date '1995-03-18' and l_shipdate > date '1995-03-18' group by l_orderkey, o_orderdate, o_shippriority order by revenue desc, o_orderdate LIMIT 10; +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | mal | +==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ | function user.s1_2(A0:bte,A1:str,A2:date,A3:date):void; | | X_180:void := querylog.define("explain\n\n\nselect\n\tl_orderkey,\n\tsum(l_extendedprice * (1 - l_discount)) as revenue,\n\to_orderdate,\n\to_shippriority\nfrom\n\tcustomer,\n\torders,\n\tlineitem\nwhere\n\tc_mktsegment = \\'MACHINERY\\'\n\tand c_custkey = o_custkey\n\tand l_orderkey = o_orderkey\n\tand o_orderdate < date \\'1995-03-18\\'\n\tand l_shipdate > date \\'1995-03-18\\'\ngroup by\n\tl_orderkey,\n\to_orderdate,\n\to_shippriority\norder by\n\trevenue desc,\n\to_orderdate\nlimit 10;","default_pipe",135); | | barrier X_243 := language.dataflow(); | | X_138 := bat.new(nil:oid,nil:str); | | X_146 := bat.append(X_138,"sys.lineitem"); | | X_156 := bat.append(X_146,"sys.L1"); | | X_166 := bat.append(X_156,"sys.orders"); | | X_174 := bat.append(X_166,"sys.orders"); | | X_141 := bat.new(nil:oid,nil:str); | | X_148 := bat.append(X_141,"l_orderkey"); | | X_158 := bat.append(X_148,"revenue"); | | X_168 := bat.append(X_158,"o_orderdate"); | | X_175 := bat.append(X_168,"o_shippriority"); | | X_142 := bat.new(nil:oid,nil:str); | | X_150 := bat.append(X_142,"int"); | | X_160 := bat.append(X_150,"decimal"); | | X_170 := bat.append(X_160,"date"); | | X_177 := bat.append(X_170,"int"); | | X_143 := bat.new(nil:oid,nil:int); | | X_152 := bat.append(X_143,32); | | X_162 := bat.append(X_152,39); | | X_172 := bat.append(X_162,0); | | X_178 := bat.append(X_172,32); | | X_145 := bat.new(nil:oid,nil:int); | | X_154 := bat.append(X_145,0); | | X_164 := bat.append(X_154,4); | | X_173 := bat.append(X_164,0); | | X_179 := bat.append(X_173,0); | | X_5 := sql.mvc(); | | X_9:bat[:oid,:date] := sql.bind(X_5,"sys","lineitem","l_shipdate",0); | | X_6:bat[:oid,:oid] := sql.tid(X_5,"sys","lineitem"); | | X_206 := algebra.thetasubselect(X_9,X_6,A3,">"); | | (X_12,r1_12) := sql.bind(X_5,"sys","lineitem","l_shipdate",2); | | X_207 := algebra.thetasubselect(r1_12,nil:bat[:oid,:oid],A3,">"); | | X_15:bat[:oid,:date] := sql.bind(X_5,"sys","lineitem","l_shipdate",1); | | X_209 := algebra.thetasubselect(X_15,X_6,A3,">"); | | X_17 := sql.subdelta(X_206,X_6,X_12,X_207,X_209); | | X_19:bat[:oid,:int] := sql.bind(X_5,"sys","lineitem","l_orderkey",0); | | (X_21,r1_24) := sql.bind(X_5,"sys","lineitem","l_orderkey",2); | | X_23:bat[:oid,:int] := sql.bind(X_5,"sys","lineitem","l_orderkey",1); | | X_24 := sql.projectdelta(X_17,X_19,X_21,r1_24,X_23); | | X_27:bat[:oid,:date] := sql.bind(X_5,"sys","orders","o_orderdate",0); | | X_25:bat[:oid,:oid] := sql.tid(X_5,"sys","orders"); | | X_210 := algebra.thetasubselect(X_27,X_25,A2,"<"); | | (X_29,r1_34) := sql.bind(X_5,"sys","orders","o_orderdate",2); | | X_211 := algebra.thetasubselect(r1_34,nil:bat[:oid,:oid],A2,"<"); | | X_31:bat[:oid,:date] := sql.bind(X_5,"sys","orders","o_orderdate",1); | | X_213 := algebra.thetasubselect(X_31,X_25,A2,"<"); | | X_32 := sql.subdelta(X_210,X_25,X_29,X_211,X_213); | | X_34:bat[:oid,:int] := sql.bind(X_5,"sys","orders","o_orderkey",0); | | (X_38,r1_46) := sql.bind(X_5,"sys","orders","o_orderkey",2); | | X_41:bat[:oid,:int] := sql.bind(X_5,"sys","orders","o_orderkey",1); | | X_43 := sql.projectdelta(X_32,X_34,X_38,r1_46,X_41); | | (X_44,r1_54) := algebra.subjoin(X_24,X_43,nil:BAT,nil:BAT,false,nil:lng); | | X_49:bat[:oid,:oid] := sql.bind_idxbat(X_5,"sys","orders","order_custkey",0); | | (X_51,r1_61) := sql.bind_idxbat(X_5,"sys","orders","order_custkey",2); | | X_53:bat[:oid,:oid] := sql.bind_idxbat(X_5,"sys","orders","order_custkey",1); | | X_55 := sql.projectdelta(X_32,X_49,X_51,r1_61,X_53); | | X_56 := algebra.leftfetchjoin(r1_54,X_55); | | X_59:bat[:oid,:str] := sql.bind(X_5,"sys","customer","c_mktsegment",0); | | X_57:bat[:oid,:oid] := sql.tid(X_5,"sys","customer"); | | X_214 := algebra.subselect(X_59,X_57,A1,A1,true,false,false); | | (X_61,r1_73) := sql.bind(X_5,"sys","customer","c_mktsegment",2); | | X_215 := algebra.subselect(r1_73,nil:bat[:oid,:oid],A1,A1,true,false,false); | | X_63:bat[:oid,:str] := sql.bind(X_5,"sys","customer","c_mktsegment",1); | | X_217 := algebra.subselect(X_63,X_57,A1,A1,true,false,false); | | X_65 := sql.subdelta(X_214,X_57,X_61,X_215,X_217); | | X_67 := X_65; | | (X_68,r1_83) := algebra.subjoin(X_56,X_67,nil:BAT,nil:BAT,false,nil:lng); | | X_70 := sql.projectdelta(X_32,X_27,X_29,r1_34,X_31); | | X_71:bat[:oid,:date] := algebra.leftfetchjoinPath(X_68,r1_54,X_70); | | X_72:bat[:oid,:int] := sql.bind(X_5,"sys","orders","o_shippriority",0); | | (X_75,r1_91) := sql.bind(X_5,"sys","orders","o_shippriority",2); | | X_78:bat[:oid,:int] := sql.bind(X_5,"sys","orders","o_shippriority",1); | | X_80 := sql.projectdelta(X_32,X_72,X_75,r1_91,X_78); | | X_81:bat[:oid,:int] := algebra.leftfetchjoinPath(X_68,r1_54,X_80); | | X_82:bat[:oid,:int] := algebra.leftfetchjoinPath(X_68,X_44,X_24); | | (X_83,r1_103,r2_103) := group.subgroup(X_82); | | (X_86,r1_106,r2_106) := group.subgroup(X_81,X_83); | | (X_89,r1_109,r2_109) := group.subgroupdone(X_71,X_86); | | X_92 := algebra.leftfetchjoin(r1_109,X_71); | | X_93:bat[:oid,:lng] := sql.bind(X_5,"sys","lineitem","l_extendedprice",0); | | (X_97,r1_117) := sql.bind(X_5,"sys","lineitem","l_extendedprice",2); | | X_99:bat[:oid,:lng] := sql.bind(X_5,"sys","lineitem","l_extendedprice",1); | | X_100 := sql.projectdelta(X_17,X_93,X_97,r1_117,X_99); | | X_101:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_68,X_44,X_100); | | X_103 := calc.lng(A0,15,2); | | X_105:bat[:oid,:lng] := sql.bind(X_5,"sys","lineitem","l_discount",0); | | (X_108,r1_136) := sql.bind(X_5,"sys","lineitem","l_discount",2); | | X_110:bat[:oid,:lng] := sql.bind(X_5,"sys","lineitem","l_discount",1); | | X_112 := sql.projectdelta(X_17,X_105,X_108,r1_136,X_110); | | X_113:bat[:oid,:lng] := algebra.leftfetchjoinPath(X_68,X_44,X_112); | | X_114:bat[:oid,:lng] := batcalc.-(X_103,X_113); | | X_115:bat[:oid,:hge] := batcalc.*(X_101,X_114); | | X_116:bat[:oid,:hge] := aggr.subsum(X_115,X_89,r1_109,true,true); | | (X_119,r1_156) := algebra.firstn(X_116,10:wrd,false,false); | | X_122 := algebra.firstn(X_92,X_119,r1_156,10:wrd,true,false); | | X_123 := algebra.leftfetchjoin(X_122,X_92); | | X_124 := algebra.leftfetchjoin(X_122,X_116); | | (X_125,r1_164,r2_164) := algebra.subsort(X_124,true,false); | | (X_128,r1_167,r2_167) := algebra.subsort(X_123,r1_164,r2_164,false,false); | | X_131:bat[:oid,:int] := algebra.leftfetchjoinPath(r1_167,X_122,r1_109,X_82); | | X_132 := algebra.subslice(X_131,0,9:wrd); | | X_136:bat[:oid,:int] := algebra.leftfetchjoinPath(X_132,r1_167,X_122,r1_109,X_81); | | X_133 := algebra.leftfetchjoin(X_132,X_131); | | X_134:bat[:oid,:hge] := algebra.leftfetchjoinPath(X_132,r1_167,X_124); | | X_135:bat[:oid,:date] := algebra.leftfetchjoinPath(X_132,r1_167,X_123); | | language.pass(X_6); | | language.pass(X_25); | | language.pass(X_57); | | language.pass(X_27); | | language.pass(X_29); | | language.pass(r1_34); | | language.pass(X_31); | | language.pass(X_32); | | language.pass(r1_54); | | language.pass(X_24); | | language.pass(X_71); | | language.pass(X_17); | | language.pass(X_68); | | language.pass(X_44); | | language.pass(X_92); | | language.pass(X_116); | | language.pass(X_82); | | language.pass(X_122); | | language.pass(r1_109); | | language.pass(X_81); | | language.pass(X_131); | | language.pass(X_124); | | language.pass(X_132); | | language.pass(r1_167); | | language.pass(X_123); | | exit X_243; | | sql.resultSet(X_174,X_175,X_177,X_178,X_179,X_133,X_134,X_135,X_136); | | end user.s1_2; | +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 135 tuples COMMIT; auto commit mode: on