hi, my query schema is SSBM.My database size is 65G.There are five tables : lineorder 600038145 rows part 1400000 date 2556 supplier 1000000 customer 3000000 and my host have enough memory space up to 500G when i run query select sum(lo_extendedprice*lo_discount) as revenue from voc.lineorder, voc.dates where lo_orderdate = d_datekey and d_weeknuminyear = 6 and d_year = 1994 and lo_discount between 5 and 7 and lo_quantity between 26 and 35; the result is below | revenue | +===============+ | 2605756481323 | +---------------+ 1 tuple (6.2s) but if i delete the condition of " lo_discount between 5 and 7" the run result is more faster than the original one. query select sum(lo_extendedprice*lo_discount) as revenue from voc.lineorder, voc.dates where lo_orderdate = d_datekey and d_weeknuminyear = 6 and d_year = 1994 and lo_quantity between 26 and 35; +---------------+ | revenue | +===============+ | 7990711777299 | +---------------+ 1 tuple (410.451ms) at the same time ,if i delete the condition of "lo_quantity between 26 and 35" the run result is more faster than the original one too. query select sum(lo_extendedprice*lo_discount) as revenue from voc.lineorder, voc.dates where lo_orderdate = d_datekey and d_weeknuminyear = 6 and d_year = 1994 and lo_quantity between 26 and 35; +---------------+ | revenue | +===============+ | 7990711777299 | +---------------+ 1 tuple (463.617ms) i am confused and if the semijoin costs a lot of execution time ? Thank you for your help. best reguards, guangliang peng