我有10个查询:TA,TB,...,TJ,每个查询生成如下结果集:
date Income AccIncome
--------------------------------
2016-10-1 10 10
2017-11-1 20 30
我需要对日期列上的TA,...,TJ的结果集执行“JOIN”,这是所有这些查询中唯一相同的日期列。我遇到的问题是如果TA,...,TJ只有两行,这个JOIN操作需要将近40秒。我正在考虑为每个TA使用视图,...,TJ。这可以提高JOIN操作的性能吗?如果是这样,你能说出原因吗?有没有其他方法可以提高此JOIN操作的性能?感谢
解释JOIN QUERY的样子:
设Tx为TA,...,TJ中的任何一个。 Tx有列
date Tx.Colx1 Tx.Colx2
JOIN操作如下:
SELECT TA.DATE, TA.COLA1, TA.COLA2, TB.COLB1, TB.COLB2, ... , TJ.COL1, TJ.COL2
FROM (QUERY A) TA
INNER JOIN (QUERY B) TB ON TA.DATE = TB.DATE
INNER JOIN (QUERY C) TC ON TA.DATE = TC.DATE
....
INNER JOIN (QUERY J) TJ ON TA.DATE = TJ.DATE
ORDER BY TA.DATE
这个操作的速度可以提高吗?