START TRANSACTION; auto commit mode: off EXPLAIN select sum(l_extendedprice * l_discount) as revenue from lineitem where l_shipdate >= date '1995-01-01' and l_shipdate < date '1995-01-01' + interval '1' year and l_discount between 0.08 - 0.01 and 0.08 + 0.01 and l_quantity < 24; +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | mal | +============================================================================================================================================================================================================================================================================================================================================+ | function user.s1_1(A0:date,A1:date,A2:int,A3:sht,A4:sht,A5:sht,A6:sht,A7:bte):void; | | X_65:void := querylog.define("explain\n\n\nselect\n\tsum(l_extendedprice * l_discount) as revenue\nfrom\n\tlineitem\nwhere\n\tl_shipdate >= date \\'1995-01-01\\'\n\tand l_shipdate < date \\'1995-01-01\\' + interval \\'1\\' year\n\tand l_discount between 0.08 - 0.01 and 0.08 + 0.01\n\tand l_quantity < 24;","default_pipe",50); | | barrier X_102 := language.dataflow(); | | X_9 := sql.mvc(); | | X_13:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_quantity",0); | | X_23:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_discount",0); | | X_32:bat[:oid,:date] := sql.bind(X_9,"sys","lineitem","l_shipdate",0); | | X_10:bat[:oid,:oid] := sql.tid(X_9,"sys","lineitem"); | | X_39:date := mtime.addmonths(A1,A2); | | X_82 := algebra.subselect(X_32,X_10,A0,X_39,true,false,false); | | (X_34,r1_43) := sql.bind(X_9,"sys","lineitem","l_shipdate",2); | | X_83 := algebra.subselect(r1_43,nil:bat[:oid,:oid],A0,X_39,true,false,false); | | X_38:bat[:oid,:date] := sql.bind(X_9,"sys","lineitem","l_shipdate",1); | | X_85 := algebra.subselect(X_38,X_10,A0,X_39,true,false,false); | | X_40 := sql.subdelta(X_82,X_10,X_34,X_83,X_85); | | X_28:sht := calc.-(A3,A4); | | X_29 := calc.lng(2,X_28,15,2); | | X_30:sht := calc.+(A5,A6); | | X_31 := calc.lng(2,X_30,15,2); | | X_86 := algebra.subselect(X_23,X_40,X_29,X_31,true,true,false); | | (X_25,r1_28) := sql.bind(X_9,"sys","lineitem","l_discount",2); | | X_87 := algebra.subselect(r1_28,nil:bat[:oid,:oid],X_29,X_31,true,true,false); | | X_27:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_discount",1); | | X_89 := algebra.subselect(X_27,X_40,X_29,X_31,true,true,false); | | X_43 := sql.subdelta(X_86,X_40,X_25,X_87,X_89); | | X_21 := calc.lng(A7,15,2); | | X_90 := algebra.thetasubselect(X_13,X_43,X_21,"<"); | | (X_16,r1_16) := sql.bind(X_9,"sys","lineitem","l_quantity",2); | | X_91 := algebra.thetasubselect(r1_16,nil:bat[:oid,:oid],X_21,"<"); | | X_19:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_quantity",1); | | X_93 := algebra.thetasubselect(X_19,X_43,X_21,"<"); | | X_44 := sql.subdelta(X_90,X_43,X_16,X_91,X_93); | | X_46:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_extendedprice",0); | | (X_49,r1_63) := sql.bind(X_9,"sys","lineitem","l_extendedprice",2); | | X_52:bat[:oid,:lng] := sql.bind(X_9,"sys","lineitem","l_extendedprice",1); | | X_54 := sql.projectdelta(X_44,X_46,X_49,r1_63,X_52); | | X_55 := sql.projectdelta(X_44,X_23,X_25,r1_28,X_27); | | X_56:bat[:oid,:hge] := batcalc.*(X_54,X_55); | | X_57:hge := aggr.sum(X_56); | | language.pass(X_10); | | language.pass(X_40); | | language.pass(X_43); | | language.pass(X_44); | | language.pass(X_23); | | language.pass(X_25); | | language.pass(r1_28); | | language.pass(X_27); | | exit X_102; | | sql.resultSet("sys.L1","revenue","decimal",39,4,10,X_57); | | end user.s1_1; | +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 50 tuples COMMIT; auto commit mode: on