Bài 50 · Chặng 4: Thì & động từ khuyết thiếu
Quá khứ hoàn thành tiếp diễn
Trung cấpPast perfect continuous
Công thức & cách dùng
had been + -ing — hành động kéo dài một thời gian đến một thời điểm trong quá khứ
1.Cấu trúc
Quá khứ hoàn thành tiếp diễn = had been + động từ -ing. Had giống nhau cho mọi chủ ngữ, nên không phải chia theo ngôi.
| Dạng | Ví dụ | |
|---|---|---|
| Khẳng định | S + had been + V-ing | She had been working. / I'd been waiting. |
| Phủ định | S + hadn't been + V-ing | They hadn't been sleeping well. |
| Câu hỏi | Had + S + been + V-ing? | Had you been waiting long? |
| Hỏi bao lâu | How long had + S + been + V-ing? | How long had he been living there? |
| Trả lời ngắn | Yes, S had. / No, S hadn't. | Yes, I had. / No, she hadn't. |
Khi nói, had thường rút gọn thành 'd: I'd been, she'd been, they'd been. 'd đứng ngay trước been luôn là had. Người Việt hay nuốt âm cuối, nên hãy bật nhẹ âm /d/ trong I'd been — thiếu nó, câu nghe như I been, người nghe khó biết bạn đang kể chuyện quá khứ.
2.Khi nào dùng
1. Hoạt động kéo dài một khoảng thời gian cho đến một thời điểm trong quá khứ — hay đi với for, since, all day, how long
By the time the doctor came, we'd been waiting for two hours.
Đến lúc bác sĩ tới thì chúng tôi đã chờ được hai tiếng rồi.
Minh had been working at the bank since 2018 when he decided to quit.
Minh đã làm ở ngân hàng từ năm 2018 thì quyết định nghỉ việc.
How long had you been learning English before you moved to Canada?
Bạn đã học tiếng Anh bao lâu trước khi chuyển sang Canada?
2. Giải thích một tình trạng trong quá khứ — hoạt động diễn ra ngay trước đó (có thể vừa dừng) và để lại dấu vết, kết quả
Her eyes were red. She'd been crying.
Mắt cô ấy đỏ hoe. Cô ấy vừa khóc.
The road was wet because it had been raining all night.
Đường ướt vì trời đã mưa suốt đêm.
I was exhausted when I got home — I'd been standing all day.
Về đến nhà tôi mệt rã rời — cả ngày tôi phải đứng.
3. Hoạt động đang tiếp diễn thì một việc khác xảy ra (thường việc đó làm nó dừng lại)
Lan had been driving for six hours when she finally stopped for coffee.
Lan lái xe liền sáu tiếng rồi mới chịu dừng lại uống cà phê.
They hadn't been dating long when they got engaged.
Họ hẹn hò chưa được bao lâu thì đính hôn.
Thì này luôn cần một mốc trong quá khứ (when I arrived, by the time…, một tình trạng lúc đó) để “đứng” vào. Tiếng Việt chỉ nói “đã … được hai tiếng rồi”, không đổi dạng động từ, nên nhiều bạn dùng nhầm have been -ing khi đang kể chuyện quá khứ. Mốc là bây giờ → have been -ing; mốc là một lúc trong quá khứ → had been -ing.
3.So với các thì gần giống
Have been -ing hay had been -ing? Cùng ý “đã làm suốt một khoảng thời gian”, chỉ khác mốc: bây giờ hay một lúc trong quá khứ.
I've been waiting for twenty minutes. Where are you?
Mình chờ hai mươi phút rồi đấy. Bạn đâu rồi? (mốc = bây giờ)
I'd been waiting for twenty minutes when she finally replied.
Mình chờ hai mươi phút thì cô ấy mới trả lời. (mốc = lúc cô ấy trả lời)
Was -ing hay had been -ing? Was -ing = đang ở giữa hoạt động ngay tại mốc đó; had been -ing = hoạt động diễn ra trước mốc đó (có thể đã dừng).
When I got home, Mum was cooking.
Lúc tôi về đến nhà, mẹ đang nấu ăn. (vẫn đang nấu)
When I got home, the kitchen smelled of garlic. Mum had been cooking.
Lúc tôi về, bếp thơm mùi tỏi. Mẹ vừa nấu ăn xong. (nấu trước đó)
Had been -ing hay had + V3? Had been -ing nói về hoạt động và bao lâu; had + V3 (quá khứ hoàn thành) nói về kết quả đã xong và bao nhiêu.
| had been + -ing | had + V3 | |
|---|---|---|
| Nhấn vào | hoạt động, thời gian kéo dài | kết quả, việc đã xong |
| Câu hỏi | How long…? | How many / How much…? |
| Ví dụ | She'd been writing emails all morning. | She'd written twenty emails by noon. |
| Xong chưa? | chưa chắc, có thể còn dở | đã xong |
Động từ trạng thái (know, believe, own, have = sở hữu…) thường không dùng dạng tiếp diễn, nên dùng had + V3 kể cả khi nói về khoảng thời gian.
We had known each other for ten years when we started the company.
Chúng tôi quen nhau mười năm rồi mới mở công ty. (không: had been knowing)
4.Lỗi thường gặp
He had been work there for ten years.He had been working there for ten years.
Sau had been cần -ing.
I was tired because I have been driving all day.I was tired because I had been driving all day.
Câu kể ở quá khứ (was) → had, không phải have.
By noon she had been reading three chapters.By noon she had read three chapters.
Nói số lượng đã xong → had + V3.
I had been knowing him for years.I had known him for years.
know là động từ trạng thái, không dùng tiếp diễn.
How long you had been living there?How long had you been living there?
Câu hỏi: had đứng trước chủ ngữ.
She had being waiting for an hour.She had been waiting for an hour.
had + been (V3 của be), không phải being.
Ví dụ
- Tuan's eyes were red because he had been crying for hours.
- By the time the bus came, we had been waiting for forty minutes.
- How long had you been looking before you found a job?
- Nam had been repairing his motorbike all morning, but it still didn't start.
