A:在這句中,had been jogging 是過去完成進行式 (had been + V-ing),而 was 是過去簡單式。根據文法,在過去兩個先後發生的動作中,發生在前的動作要用過去完成式 (had + P.P.),而發生在後的動作用過去簡單式。換言之,過去完成式係用來表示發生在過去某個動作或某一特定時間之前的動作。例如:
- Mr. Chen had studied English before he moved to San Francisco. (陳先生搬到舊金山之前已學了英文)
- I had never seen such a beautiful beach before I went to Pescadores. (在我去澎湖之前,我從未看過這麼美麗的海灘)
- A: Had you ever visited the U.K. before your trip in 2011? (在 2011 年的英國行之前,你有去過英國嗎?)
B: Yes, I had been to the U.K. once before. (有,我之前去過一次)
然而,若過去完成式的動作一直持續至過去某個動作或某一特定時間,那麼我們須使用過去完成進行式來表示。例如:
- James had been waiting there for more than two hours when Mary finally arrived. (當瑪麗終於抵達時,詹姆斯已在那裡等了超過兩小時)
- Carla had been working at that company for three years when it went out of business. (在那家公司歇業時,卡拉已在該公司工作了三年)
- How long had you been waiting to get on the bus? (你等多久才坐上公車呢?)
由於過去完成式或過去完成進行式的動作都發生在過去簡單式的動作之前,兩者自然很容易就形成因果 (cause and effect) 關係;是故,過去完成式 + 過去簡單式或過去完成進行式 + 過去簡單式,乃成為表示過去發生的兩個有因果關係的動作或事件的完美組合,而問題中的句子 Andy was very tired because he had been jogging. (安迪很疲憊,因為他一直在慢跑) 是屬於過去完成進行式 + 過去簡單式的組合。例如:
- I did not have any money because I had lost my wallet. (我身無分文,因為我遺失了錢包)
- Sam knew Bangkok so well because he had visited the city several times. (山姆對曼谷瞭若指掌,因為他已去過曼谷好幾趟)
- We were not able to get a hotel room because we had not booked in advance. (我們沒有飯店房間可住,因為我們事先沒有預訂)
- Barry failed the final test because he had not been attending class. (貝瑞期末考不及格,因為他一直沒來上課)
- Kevin was very tired because he had been washing cars. (凱文非常疲憊,因為他一直在洗車)
- Amy gained weight because she had been overeating. (艾美體重增加了,因為她一直暴飲暴食)
值得一提的是,在過去完成進行式 + 過去簡單式的情況中,過去完成進行式的動作在過去簡單式的動作或狀態生時可能還在持續中,但也可能已告結束。
事實上,現在完成進行式 (has/have been + V-ing) + 現在簡單式亦是一種表示因果關係的完美句型,它是用來表示最近的動作產生現在的結果或對現在造成的影響。但必須注意是,現在完成式 (has/have + P.P.) 並沒有這樣的用法。例如:
- My hands are so dirty because I have been working in the garden. (我的雙手很髒,因為我一直在花園工作)
- Kevin is very tired because he has been jogging/washing cars. (凱文非常疲憊,因為他一直在慢跑 / 洗車)
- The ground is soaking wet because it has been raining all night. (地面濕透了,因為整晚都在下雨)
同樣地,在現在完成進行式 + 現在簡單式的情況中,現在完成進行式的動作在現在簡單式的動作或狀態發生時可能還在持續中,但也可能已告結束。以 The ground is soaking wet because it has been raining all night. 這句為例,在講這句話的時候,雨可能已經停了,但整晚下雨對現在所產生的結果或造成的影響 (地面濕透了) 是顯而易見的。