The dream he had had for so many years ended there

问题描述:

The dream he had had for so many years ended there
he dreamed of ended there for so many years 好像写的有点不对劲 我也不知道怎么写
这个句话我不太明白 谁能帮分析下
1.为什么The dream 做什么?
2.2个had 分别意思

他多年以来做的那个梦在那时结束了.
the dream 是主语
The dream (that) he had had for so many years ended there 省略了that,这里(that) he had had for so many years 是定语从句,因为后面有表示期限的for many years,所以用完成时,而后面ended是过去式,所以用过去完成时
had done 第一个had是助动词,第二个是have的过去分词