📄 tst4631.stable.out
字号:
V33 := algebra.tunique(Ext); # 21 ALGtunique (V33:bat[:oid,:int])<-(Ext:bat[:oid,:int]) V34 := bat.mirror(V33); # 22 BKCmirror (V34:bat[:oid,:oid])<-(V33:bat[:oid,:int]) V35:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 23 (V35:bat[:oid,:oid])<-(_2:str)(_3:str)(_5:int) V36 := bat.reverse(V35); # 24 BKCreverse (V36:bat[:oid,:oid])<-(V35:bat[:oid,:oid]) V37 := algebra.kdifference(V19,V36); # 25 ALGkdiff (V37:bat[:oid,:bit])<-(V19:bat[:oid,:bit])(V36:bat[:oid,:oid]) V38 := algebra.join(V18,V37); # 26 ALGjoin (V38:bat[:oid,:bit])<-(V18:bat[:oid,:oid])(V37:bat[:oid,:bit]) V39 := algebra.join(V34,V38); # 27 ALGjoin (V39:bat[:oid,:bit])<-(V34:bat[:oid,:oid])(V38:bat[:oid,:bit]) V40 := algebra.sort(V39); # 28 ALGhsort (V40:bat[:oid,:bit])<-(V39:bat[:oid,:bit]) V41:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 29 (V41:bat[:oid,:oid])<-(_40:str)(_41:str)(_42:int) V45 := bat.reverse(V41); # 30 BKCreverse (V45:bat[:oid,:oid])<-(V41:bat[:oid,:oid]) V46 := algebra.kdifference(V26,V45); # 31 ALGkdiff (V46:bat[:oid,:bit])<-(V26:bat[:oid,:bit])(V45:bat[:oid,:oid]) V47 := algebra.join(V18,V46); # 32 ALGjoin (V47:bat[:oid,:bit])<-(V18:bat[:oid,:oid])(V46:bat[:oid,:bit]) V48 := algebra.join(V34,V47); # 33 ALGjoin (V48:bat[:oid,:bit])<-(V34:bat[:oid,:oid])(V47:bat[:oid,:bit]) V49 := group.refine(V40,V48); # 34 GRPrefine (V49:bat[:oid,:oid])<-(V40:bat[:oid,:bit])(V48:bat[:oid,:bit]) V50:bat[:oid,:int] := user.bind("sys","lineitem","l_quantity",0); # 35 (V50:bat[:oid,:int])<-(_40:str)(_41:str)(_49:str)(_42:int) V52:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 36 (V52:bat[:oid,:oid])<-(_40:str)(_41:str)(_42:int) V53 := bat.reverse(V52); # 37 BKCreverse (V53:bat[:oid,:oid])<-(V52:bat[:oid,:oid]) V54 := algebra.kdifference(V50,V53); # 38 ALGkdiff (V54:bat[:oid,:int])<-(V50:bat[:oid,:int])(V53:bat[:oid,:oid]) V55 := algebra.join(V18,V54); # 39 ALGjoin (V55:bat[:oid,:int])<-(V18:bat[:oid,:oid])(V54:bat[:oid,:int]) V56 := aggr.sum(V55,V32,V34); # 40 AX3aggrX3_sum3_int_lng (V56:bat[:oid,:lng])<-(V55:bat[:oid,:int])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V57:bat[:oid,:flt] := user.bind("sys","lineitem","l_extendedprice",0); # 41 (V57:bat[:oid,:flt])<-(_40:str)(_41:str)(_56:str)(_42:int) V59:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 42 (V59:bat[:oid,:oid])<-(_40:str)(_41:str)(_42:int) V60 := bat.reverse(V59); # 43 BKCreverse (V60:bat[:oid,:oid])<-(V59:bat[:oid,:oid]) V61 := algebra.kdifference(V57,V60); # 44 ALGkdiff (V61:bat[:oid,:flt])<-(V57:bat[:oid,:flt])(V60:bat[:oid,:oid]) V62 := algebra.join(V18,V61); # 45 ALGjoin (V62:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V61:bat[:oid,:flt]) V63 := aggr.sum(V62,V32,V34); # 46 AX3aggrX3_sum3_flt_dbl (V63:bat[:oid,:dbl])<-(V62:bat[:oid,:flt])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V64:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 47 (V64:bat[:oid,:oid])<-(_40:str)(_41:str)(_42:int) V65 := bat.reverse(V64); # 48 BKCreverse (V65:bat[:oid,:oid])<-(V64:bat[:oid,:oid]) V66 := algebra.kdifference(V57,V65); # 49 ALGkdiff (V66:bat[:oid,:flt])<-(V57:bat[:oid,:flt])(V65:bat[:oid,:oid]) V67 := algebra.join(V18,V66); # 50 ALGjoin (V67:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V66:bat[:oid,:flt]) V69 := calc.lng(1); # 51 CALCint2lng (V69:lng)<-(_67:int) V71 := calc.*(V69,100); # 52 CALCbinaryMULlngint (V71:lng)<-(V69:lng)(_69:int) V72:bat[:oid,:flt] := user.bind("sys","lineitem","l_discount",0); # 53 (V72:bat[:oid,:flt])<-(_40:str)(_41:str)(_71:str)(_42:int) V74:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 54 (V74:bat[:oid,:oid])<-(_40:str)(_41:str)(_42:int) V78 := bat.reverse(V74); # 55 BKCreverse (V78:bat[:oid,:oid])<-(V74:bat[:oid,:oid]) V79 := algebra.kdifference(V72,V78); # 56 ALGkdiff (V79:bat[:oid,:flt])<-(V72:bat[:oid,:flt])(V78:bat[:oid,:oid]) V80 := algebra.join(V18,V79); # 57 ALGjoin (V80:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V79:bat[:oid,:flt]) V81:bat[:oid,:flt] := optimizer.multiplex("calc","-",V71,V80); # 58 OPTmultiplex (V81:bat[:oid,:flt])<-(_77:str)(_78:str)(V71:lng)(V80:bat[:oid,:flt]) V83 := batcalc.*(V67,V81); # 59 CMDbatMUL_flt_flt_flt (V83:bat[:oid,:flt])<-(V67:bat[:oid,:flt])(V81:bat[:oid,:flt]) V85 := aggr.sum(V83,V32,V34); # 60 AX3aggrX3_sum3_flt_dbl (V85:bat[:oid,:dbl])<-(V83:bat[:oid,:flt])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V86:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 61 (V86:bat[:oid,:oid])<-(_82:str)(_83:str)(_84:int) V87 := bat.reverse(V86); # 62 BKCreverse (V87:bat[:oid,:oid])<-(V86:bat[:oid,:oid]) V88 := algebra.kdifference(V57,V87); # 63 ALGkdiff (V88:bat[:oid,:flt])<-(V57:bat[:oid,:flt])(V87:bat[:oid,:oid]) V89 := algebra.join(V18,V88); # 64 ALGjoin (V89:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V88:bat[:oid,:flt]) V90 := calc.lng(1); # 65 CALCint2lng (V90:lng)<-(_67:int) V91 := calc.*(V90,100); # 66 CALCbinaryMULlngint (V91:lng)<-(V90:lng)(_69:int) V92:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 67 (V92:bat[:oid,:oid])<-(_82:str)(_83:str)(_84:int) V93 := bat.reverse(V92); # 68 BKCreverse (V93:bat[:oid,:oid])<-(V92:bat[:oid,:oid]) V94 := algebra.kdifference(V72,V93); # 69 ALGkdiff (V94:bat[:oid,:flt])<-(V72:bat[:oid,:flt])(V93:bat[:oid,:oid]) V95 := algebra.join(V18,V94); # 70 ALGjoin (V95:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V94:bat[:oid,:flt]) V96:bat[:oid,:flt] := optimizer.multiplex("calc","-",V91,V95); # 71 OPTmultiplex (V96:bat[:oid,:flt])<-(_77:str)(_78:str)(V91:lng)(V95:bat[:oid,:flt]) V97 := batcalc.*(V89,V96); # 72 CMDbatMUL_flt_flt_flt (V97:bat[:oid,:flt])<-(V89:bat[:oid,:flt])(V96:bat[:oid,:flt]) V98 := calc.lng(1); # 73 CALCint2lng (V98:lng)<-(_67:int) V99 := calc.*(V98,100); # 74 CALCbinaryMULlngint (V99:lng)<-(V98:lng)(_69:int) V100:bat[:oid,:flt] := user.bind("sys","lineitem","l_tax",0); # 75 (V100:bat[:oid,:flt])<-(_82:str)(_83:str)(_99:str)(_84:int) V102:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 76 (V102:bat[:oid,:oid])<-(_82:str)(_83:str)(_84:int) V103 := bat.reverse(V102); # 77 BKCreverse (V103:bat[:oid,:oid])<-(V102:bat[:oid,:oid]) V104 := algebra.kdifference(V100,V103); # 78 ALGkdiff (V104:bat[:oid,:flt])<-(V100:bat[:oid,:flt])(V103:bat[:oid,:oid]) V105 := algebra.join(V18,V104); # 79 ALGjoin (V105:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V104:bat[:oid,:flt]) V106:bat[:oid,:flt] := optimizer.multiplex("calc","+",V99,V105); # 80 OPTmultiplex (V106:bat[:oid,:flt])<-(_77:str)(_105:str)(V99:lng)(V105:bat[:oid,:flt]) V108 := batcalc.*(V97,V106); # 81 CMDbatMUL_flt_flt_flt (V108:bat[:oid,:flt])<-(V97:bat[:oid,:flt])(V106:bat[:oid,:flt]) V109 := aggr.sum(V108,V32,V34); # 82 AX3aggrX3_sum3_flt_dbl (V109:bat[:oid,:dbl])<-(V108:bat[:oid,:flt])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V110:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 83 (V110:bat[:oid,:oid])<-(_82:str)(_83:str)(_84:int) V114 := bat.reverse(V110); # 84 BKCreverse (V114:bat[:oid,:oid])<-(V110:bat[:oid,:oid]) V115 := algebra.kdifference(V50,V114); # 85 ALGkdiff (V115:bat[:oid,:int])<-(V50:bat[:oid,:int])(V114:bat[:oid,:oid]) V116 := algebra.join(V18,V115); # 86 ALGjoin (V116:bat[:oid,:int])<-(V18:bat[:oid,:oid])(V115:bat[:oid,:int]) V117 := aggr.avg(V116,V32,V34); # 87 AX3aggrX3_avg3_int (V117:bat[:oid,:dbl])<-(V116:bat[:oid,:int])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V118:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 88 (V118:bat[:oid,:oid])<-(_82:str)(_83:str)(_84:int) V119 := bat.reverse(V118); # 89 BKCreverse (V119:bat[:oid,:oid])<-(V118:bat[:oid,:oid]) V120 := algebra.kdifference(V57,V119); # 90 ALGkdiff (V120:bat[:oid,:flt])<-(V57:bat[:oid,:flt])(V119:bat[:oid,:oid]) V121 := algebra.join(V18,V120); # 91 ALGjoin (V121:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V120:bat[:oid,:flt]) V122 := aggr.avg(V121,V32,V34); # 92 AX3aggrX3_avg3_flt (V122:bat[:oid,:dbl])<-(V121:bat[:oid,:flt])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V124:bat[:oid,:int] := optimizer.multiplex("calc","round",V122,100); # 93 OPTmultiplex (V124:bat[:oid,:int])<-(_119:str)(_120:str)(V122:bat[:oid,:dbl])(_121:int) V126:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); # 94 (V126:bat[:oid,:oid])<-(_123:str)(_124:str)(_125:int) V127 := bat.reverse(V126); # 95 BKCreverse (V127:bat[:oid,:oid])<-(V126:bat[:oid,:oid]) V128 := algebra.kdifference(V72,V127); # 96 ALGkdiff (V128:bat[:oid,:flt])<-(V72:bat[:oid,:flt])(V127:bat[:oid,:oid]) V129 := algebra.join(V18,V128); # 97 ALGjoin (V129:bat[:oid,:flt])<-(V18:bat[:oid,:oid])(V128:bat[:oid,:flt]) V130 := aggr.avg(V129,V32,V34); # 98 AX3aggrX3_avg3_flt (V130:bat[:oid,:dbl])<-(V129:bat[:oid,:flt])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid]) V131 := optimizer.multiplex("calc","round",V130,100); # 99 OPTmultiplex (V131:any)<-(_119:str)(_120:str)(V130:bat[:oid,:dbl])(_121:int) V132 := aggr.count(V32,V32,V34); # 100 AX3aggrX3_count3Nils (V132:bat[:oid,:int])<-(V32:bat[:oid,:oid])(V32:bat[:oid,:oid])(V34:bat[:oid,:oid])end qry1; # 101 ##optimizer.setDebug();#optimizer.aliasRemoval("user","qry1");#optimizer.commonExpressionRemoval("user","qry1");#mdb.list("user","qry1");#function user.main():void; # 0 (main:void)# TPCH Q1 non-optimized # 1 (_1:str)#don;t depend on SQL library # 2 (_2:str) mdb.list("user","qry1"); # 3 MDBlist3 (_9:void)<-(_5:str)(_6:str)end main; # 4 function user.qry1():void; V3:bat[:oid,:date] := user.bind("sys","lineitem","l_shipdate",0); V8:bat[:oid,:oid] := user.bind_dbat("sys","lineitem",0); V9 := bat.reverse(V8); V10 := algebra.kdifference(V3,V9); a := mtime.date(nil:void); V14 := algebra.uselect(V10,a,a); V17 := algebra.markT(V14,0@0); V18 := bat.reverse(V17); V19:bat[:oid,:bit] := user.bind("sys","lineitem","l_returnflag",0); V23 := algebra.kdifference(V19,V9); V24 := algebra.join(V18,V23); (V25,E25):= group.new(V24); V26:bat[:oid,:bit] := user.bind("sys","lineitem","l_linestatus",0); V30 := algebra.kdifference(V26,V9); V31 := algebra.join(V18,V30); (Ext,V32):= group.derive(V25,E25,V31); V33 := algebra.tunique(Ext); V34 := bat.mirror(V33); V39 := algebra.join(V34,V24); V40 := algebra.sort(V39); V48 := algebra.join(V34,V31); V49 := group.refine(V40,V48); V50:bat[:oid,:int] := user.bind("sys","lineitem","l_quantity",0); V54 := algebra.kdifference(V50,V9); V55 := algebra.join(V18,V54); V56 := aggr.sum(V55,V32,V34); V57:bat[:oid,:flt] := user.bind("sys","lineitem","l_extendedprice",0); V61 := algebra.kdifference(V57,V9); V62 := algebra.join(V18,V61); V63 := aggr.sum(V62,V32,V34); V69 := calc.lng(1); V71 := calc.*(V69,100); V72:bat[:oid,:flt] := user.bind("sys","lineitem","l_discount",0); V79 := algebra.kdifference(V72,V9); V80 := algebra.join(V18,V79); V81:bat[:oid,:flt] := optimizer.multiplex("calc","-",V71,V80); V83 := batcalc.*(V62,V81); V85 := aggr.sum(V83,V32,V34); V96:bat[:oid,:flt] := optimizer.multiplex("calc","-",V71,V80); V97 := batcalc.*(V62,V96); V100:bat[:oid,:flt] := user.bind("sys","lineitem","l_tax",0); V104 := algebra.kdifference(V100,V9); V105 := algebra.join(V18,V104); V106:bat[:oid,:flt] := optimizer.multiplex("calc","+",V71,V105); V108 := batcalc.*(V97,V106); V109 := aggr.sum(V108,V32,V34); V117 := aggr.avg(V55,V32,V34); V122 := aggr.avg(V62,V32,V34); V124:bat[:oid,:int] := optimizer.multiplex("calc","round",V122,100); V130 := aggr.avg(V80,V32,V34); V131 := optimizer.multiplex("calc","round",V130,100); V132 := aggr.count(V32,V32,V34);end qry1;# 19:36:05 > # 19:36:05 > Done.# 19:36:05 >
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -