Trả lời ngắn: Thì quá khứ hoàn thành (Past Perfect) dùng để nói một việc đã xảy ra và hoàn tất trước một thời điểm hoặc một việc khác trong quá khứ. Công thức rất gọn: S + had + V3 (dùng had cho mọi chủ ngữ). Ví dụ: When I arrived at the station, the train had already left. – Khi tôi tới ga thì tàu đã chạy mất rồi. Nói ngắn gọn: đây là “quá khứ của quá khứ”.
Thì quá khứ hoàn thành là gì?
Khi kể chuyện quá khứ, đôi khi bạn cần lùi xa hơn nữa để nói về chuyện xảy ra trước đó. Tiếng Việt dùng “đã … rồi”, “trước đó đã…”; tiếng Anh dùng had + V3.
Hình dung một trục thời gian có hai mốc trong quá khứ:
| Mốc 1 (xảy ra trước) | Mốc 2 (xảy ra sau) | Bây giờ |
|---|---|---|
| quá khứ hoàn thành: had left | quá khứ đơn: arrived | lúc đang kể chuyện |
- She had finished her homework before she went out. – Cô ấy đã làm xong bài tập trước khi đi chơi.
- I didn’t recognise him because he had changed a lot. – Tôi không nhận ra anh ấy vì anh ấy đã thay đổi nhiều.
Nếu bạn chưa vững thì quá khứ đơn, nên ôn lại trước, vì hai thì này gần như luôn đi cùng nhau.
Công thức thì quá khứ hoàn thành
| Dạng câu | Công thức | Ví dụ |
|---|---|---|
| Khẳng định | S + had + V3 | They had eaten. – Họ đã ăn rồi. |
| Phủ định | S + had not (hadn’t) + V3 | I hadn’t seen the film before. – Trước đó tôi chưa xem phim này. |
| Câu hỏi Yes/No | Had + S + V3? | Had you met her before? – Trước đó bạn đã gặp cô ấy chưa? |
| Câu hỏi Wh- | Wh- + had + S + V3? | Where had he gone? – Anh ấy đã đi đâu (trước đó)? |
Viết tắt: I had → I’d, she had → she’d, they had → they’d. Cẩn thận: I’d cũng có thể là I would. Phân biệt bằng động từ theo sau: I’d gone (had + V3) khác I’d go (would + V nguyên mẫu).
V3 là quá khứ phân từ: động từ có quy tắc thêm -ed (work → worked), động từ bất quy tắc phải học thuộc (go → gone, see → seen, write → written). Xem bảng động từ bất quy tắc để tra cột V3.
4 cách dùng thì quá khứ hoàn thành
1. Hành động xảy ra trước một hành động khác trong quá khứ
- When we got to the cinema, the film had started. – Khi chúng tôi tới rạp thì phim đã bắt đầu rồi.
- He told me that he had lost his wallet. – Anh ấy kể với tôi là anh ấy đã làm mất ví.
So sánh với câu dùng hai quá khứ đơn: When we got to the cinema, the film started. – Khi chúng tôi tới rạp thì phim (mới) bắt đầu. Đổi thì là đổi thứ tự sự việc.
2. Hành động xảy ra trước một mốc thời gian trong quá khứ
- By 2020, she had worked there for ten years. – Tính đến năm 2020, cô ấy đã làm ở đó được mười năm.
- By the end of last month, I had read five books. – Đến cuối tháng trước, tôi đã đọc xong năm cuốn sách.
3. Giải thích nguyên nhân của một tình huống trong quá khứ
- She was tired because she hadn’t slept well. – Cô ấy mệt vì đã ngủ không ngon.
- The street was wet. It had rained all night. – Đường ướt. Trời đã mưa cả đêm.
4. Trong câu điều kiện loại 3, câu ước và câu tường thuật
- If I had studied harder, I would have passed. – Nếu tôi đã học chăm hơn thì tôi đã đỗ. (câu điều kiện loại 3)
- I wish I had told her the truth. – Giá mà tôi đã nói thật với cô ấy.
- “I saw him,” she said. → She said she had seen him. (câu tường thuật)
Dấu hiệu nhận biết
| Từ / cấu trúc | Ví dụ |
|---|---|
| before, after | After she had locked the door, she went to bed. |
| by the time + quá khứ đơn | By the time I woke up, my parents had gone to work. |
| by + mốc quá khứ | By 9 a.m., we had finished the test. |
| already, just, never, ever (trong câu kể quá khứ) | I had never been abroad before that trip. |
| when (việc kia đã xong) | When I called, he had already left. |
| until, as soon as, once | She didn’t go home until she had finished the report. |
Mẹo: với before và after, thứ tự đã rõ nhờ chính từ nối, nên người bản ngữ cũng hay dùng hai quá khứ đơn: She went to bed after she locked the door. Câu này vẫn đúng. Quá khứ hoàn thành chỉ bắt buộc khi không dùng nó thì người nghe dễ hiểu sai thứ tự.
So sánh quá khứ hoàn thành với các thì gần giống
| Thì | Công thức | Dùng khi | Ví dụ |
|---|---|---|---|
| Quá khứ đơn | V2 | việc đã xong, có mốc quá khứ | I lost my key yesterday. |
| Hiện tại hoàn thành | have/has + V3 | việc trong quá khứ còn liên quan tới bây giờ | I have lost my key. (giờ vẫn chưa tìm thấy) |
| Quá khứ hoàn thành | had + V3 | việc xảy ra trước một mốc quá khứ | I couldn’t get in. I had lost my key. |
| Quá khứ tiếp diễn | was/were + V-ing | việc đang dở dang tại một lúc trong quá khứ | I was looking for my key when you called. |
Hiện tại hoàn thành nhìn từ bây giờ, còn quá khứ hoàn thành nhìn từ một mốc quá khứ. Nếu bạn đã hiểu thì hiện tại hoàn thành, chỉ cần dời điểm nhìn về quá khứ. Phần quá khứ tiếp diễn có trong bài thì quá khứ tiếp diễn.
Quá khứ hoàn thành tiếp diễn (nhắc qua)
Khi muốn nhấn mạnh việc đã kéo dài liên tục trước một mốc quá khứ, dùng had been + V-ing:
- She was out of breath because she had been running. – Cô ấy thở hổn hển vì đã chạy suốt.
- We had been waiting for an hour when the bus finally came. – Chúng tôi đã đợi cả tiếng đồng hồ thì xe buýt mới tới.
Lỗi người Việt hay mắc
- Dùng quá khứ hoàn thành cho mọi chuyện “đã” xảy ra. Chữ “đã” trong tiếng Việt không có nghĩa là phải dùng had + V3.
Sai: Yesterday I had gone to the market.
Đúng: Yesterday I went to the market. (chỉ có một mốc quá khứ → quá khứ đơn) - Dùng V2 thay vì V3 sau had.
Sai: She had went home.
Đúng: She had gone home. - Đặt had nhầm vào hành động xảy ra sau.
Sai: When I had arrived, the train left.
Đúng: When I arrived, the train had left. (tàu chạy trước, tôi tới sau) - Dùng has/have thay cho had khi kể chuyện quá khứ.
Sai: By 2019, he has lived in Hanoi for 5 years.
Đúng: By 2019, he had lived in Hanoi for 5 years. - Thêm did vào câu hỏi.
Sai: Did you had finished?
Đúng: Had you finished? - Dùng “had had” sai hoặc sợ dùng. Had had hoàn toàn đúng ngữ pháp khi động từ chính là have: I had had breakfast before I left. – Tôi đã ăn sáng trước khi đi.
Bài tập
Chia động từ trong ngoặc ở thì quá khứ hoàn thành hoặc quá khứ đơn.
- When I got home, my brother ___ (already / eat) all the cake.
- She ___ (never / see) the sea before she moved to Nha Trang.
- By the time the police arrived, the thief ___ (escape).
- I was hungry because I ___ (not / have) lunch.
- After he ___ (finish) work, he ___ (go) to the gym.
- ___ you ___ (ever / try) Vietnamese coffee before you came here?
- Last night I ___ (watch) a film and then ___ (go) to bed.
- He said he ___ (lose) his phone.
Xem đáp án
- had already eaten
- had never seen
- had escaped
- hadn’t had
- had finished … went (hoặc finished … went, vì after đã cho biết thứ tự)
- Had … ever tried
- watched … went (hai việc kể theo đúng thứ tự → quá khứ đơn)
- had lost (câu tường thuật: lùi thì)
Câu hỏi thường gặp
Có thể dùng quá khứ hoàn thành một mình trong câu không?
Có, nếu mốc quá khứ đã được nhắc trong ngữ cảnh trước đó. Ví dụ: I couldn’t pay. I had left my wallet at home.
Khi nào chỉ cần quá khứ đơn?
Khi bạn kể các việc theo đúng thứ tự xảy ra, hoặc khi từ nối (before, after) đã làm rõ thứ tự. Quá khứ hoàn thành dùng để “quay ngược” về việc xảy ra trước.
Vì sao câu ước và câu điều kiện loại 3 dùng had + V3?
Vì chúng nói về điều không có thật trong quá khứ. Tiếng Anh “lùi” thêm một bậc thì để chỉ sự giả định đó.
Gặp động từ chưa biết V3?
Tra trong công cụ tra từ hoặc bảng động từ bất quy tắc.
Học tiếp
- Thì quá khứ đơn
- Thì quá khứ tiếp diễn
- Thì hiện tại hoàn thành
- Present Perfect khác Past Simple như thế nào?
- Tổng hợp các thì trong tiếng Anh
- Tra từ Anh – Việt
