Bỏ qua tới nội dung
The Real IELTSLuyện miễn phí

B1 · Thì · Bài 3/21

Past perfect – quá khứ hoàn thành

Thì quá khứ hoàn thành had + V3: nói việc xảy ra trước một việc khác trong quá khứ, dùng với when, by the time, already, never … before.

Sau bài này bạn sẽ

  • chia đúng had + V3 ở câu khẳng định, phủ định và câu hỏi.
  • dùng quá khứ hoàn thành khi cần cho biết việc nào xảy ra trước trong quá khứ.
  • biết khi nào quá khứ đơn là đủ (before, after, kể chuỗi việc theo thứ tự).

Khi nào dùng?

Quá khứ hoàn thành (had + V3) là “quá khứ của quá khứ”: việc xảy ra trước một việc khác hoặc một mốc khác trong quá khứ.

When we arrived at the cinema, the film had started. → Phim bắt đầu trước, chúng tôi đến sau.

Hay đi với: when, by the time, already, just, never … before, because và mốc by + thời gian quá khứ (by 2010).

Công thức

Dạng câuCông thứcVí dụ
Khẳng địnhS + had + V3I had finished my homework.
Phủ địnhS + hadn't (had not) + V3She hadn't eaten all day.
Nghi vấnHad + S + V3?Had you met him before?
Trả lời ngắnYes, S + had. / No, S + hadn't.Yes, I had. / No, I hadn't.

Khi nào quá khứ đơn là đủ?

  • Khi thứ tự làm đổi nghĩa thì phải chọn đúng: When I got to the station, the train left (tàu chạy đúng lúc tôi đến) ≠ When I got to the station, the train had left (tàu chạy trước, tôi lỡ tàu).
  • Kể chuỗi việc theo đúng thứ tự thì chỉ cần quá khứ đơn: I got up, had breakfast and went to work.
  • Với before / after, thứ tự đã rõ nên quá khứ đơn cũng đúng: After I finished / had finished my homework, I watched TV.
  • Không dùng quá khứ hoàn thành một mình khi không có việc hay mốc quá khứ nào khác: nói I visited Hue last year, không nói I had visited Hue last year.

Ví dụ

  • When I got home, my parents had already eaten dinner.

    Khi tôi về đến nhà, bố mẹ đã ăn tối xong rồi.bố mẹ ăn trước, tôi về sau

  • I had never seen snow before I went to Korea.

    Trước khi sang Hàn Quốc, tôi chưa từng thấy tuyết.never … before + mốc quá khứ

  • By the time I graduated, I had worked in three different cafés.

    Đến lúc tốt nghiệp, tôi đã làm ở ba quán cà phê khác nhau.by the time + quá khứ đơn

  • She was exhausted because she had worked a twelve-hour shift.

    Cô ấy kiệt sức vì đã làm một ca mười hai tiếng.nguyên nhân xảy ra trước

  • Had you met your roommate before you moved in?

    Bạn đã gặp bạn cùng phòng trước khi dọn đến chưa?câu hỏi Had + S + V3

  • We hadn't booked a table, so we had to wait for an hour.

    Chúng tôi chưa đặt bàn nên phải đợi một tiếng.phủ định hadn't + V3

  • My grandfather told me he had grown up in a small fishing village.

    Ông tôi kể rằng ông đã lớn lên ở một làng chài nhỏ.việc trước lúc kể

  • By the end of the 1990s, most families in my village had bought a TV.

    Đến cuối những năm 1990, hầu hết các gia đình trong làng tôi đã mua tivi.by + mốc quá khứ

  • After I had saved enough money, I bought my first laptop.

    Sau khi dành dụm đủ tiền, tôi mua chiếc laptop đầu tiên.after → After I saved cũng đúng

  • I realised I had left my umbrella on the bus.

    Tôi nhận ra mình đã để quên ô trên xe buýt.để quên trước, nhận ra sau

Lỗi hay gặp

  • Sai: When I got to the station, the train already left.

    Đúng: ✓ When I got to the station, the train had already left.

    Tàu chạy trước khi tôi đến → had already left. Trong văn chuẩn và IELTS, việc xảy ra trước một mốc quá khứ dùng quá khứ hoàn thành.

  • Sai: I have never been abroad before my trip to Thailand last year.

    Đúng: ✓ I had never been abroad before my trip to Thailand last year.

    Mốc so sánh là chuyến đi năm ngoái (quá khứ) → dùng had, không dùng have.

  • Sai: She had went home.

    Đúng: ✓ She had gone home.

    Sau had là V3: go – went – gone.

  • Sai: I had visited Hue last year.

    Đúng: ✓ I visited Hue last year.

    Chỉ có một việc với mốc quá khứ → quá khứ đơn là đủ.

Bài tập có đáp án

Tự làm trước, rồi bấm “Xem đáp án” để đối chiếu và đọc giải thích.

  1. Câu 1 · Chọn đáp án

    When we got to the cinema, the film ______, so we missed the first ten minutes.

    • A. had already started
    • B. has already started
    • C. already starts
    Xem đáp ánẨn đáp án

    had already started

    Phim bắt đầu trước khi chúng tôi đến (lỡ mười phút) → had already started.

  2. Câu 2 · Chọn đáp án

    Lan couldn't pay for lunch because she ______ her wallet at home.

    • A. has left
    • B. had left
    • C. leaves
    Xem đáp ánẨn đáp án

    had left

    Để quên ví xảy ra trước lúc không trả được tiền (quá khứ) → had left.

  3. Câu 3 · Chọn đáp án

    By the time the firefighters arrived, the fire ______ three houses.

    • A. had destroyed
    • B. has destroyed
    • C. destroys
    Xem đáp ánẨn đáp án

    had destroyed

    By the time + quá khứ đơn → việc xong trước đó dùng had destroyed.

  4. Câu 4 · Điền vào chỗ trống

    I ______ (never / see) the sea before I moved to Nha Trang.

    Xem đáp ánẨn đáp án

    had never seen

    Trước mốc quá khứ (lúc chuyển đến Nha Trang) → had never seen.

  5. Câu 5 · Điền vào chỗ trống

    Tom felt nervous on the plane because he ______ (not fly) before.

    Xem đáp ánẨn đáp án

    hadn't flown

    Trước chuyến bay đó chưa từng bay → hadn't (had not) flown (fly – flew – flown).

  6. Câu 6 · Điền vào chỗ trống

    ______ you ______ (finish) your report by the time the meeting started?

    Xem đáp ánẨn đáp án

    Had / finished

    Câu hỏi quá khứ hoàn thành: Had + chủ ngữ + V3?

  7. Câu 7 · Sắp xếp thành câu

    Khi tôi gọi, cô ấy đã đi ngủ rồi.

    hadwhen I calledto bedshealreadygone

    Xem đáp ánẨn đáp án

    She had already gone to bed when I called.

    Đi ngủ trước, tôi gọi sau → had already gone; already đứng giữa had và V3.

  8. Câu 8 · Sắp xếp thành câu

    Trước chuyến đi Việt Nam, anh ấy chưa từng ăn phở.

    hadphobefore his tripeatenneverheto Vietnam

    Xem đáp ánẨn đáp án

    He had never eaten pho before his trip to Vietnam.

    had never + V3 + before + mốc quá khứ.

  9. Câu 9 · Tìm và sửa lỗi

    Tìm và sửa lỗi sai.

    Most of the guests have already left when I arrived at the party.

    Xem đáp ánẨn đáp án

    have already left → had already left

    Khách về trước lúc tôi đến (quá khứ) → had already left, không dùng have.

  10. Câu 10 · Tìm và sửa lỗi

    Tìm và sửa lỗi sai.

    After she had wrote the email, she sent it to her boss.

    Xem đáp ánẨn đáp án

    had wrote → had written

    Sau had là V3: write – wrote – written → had written. Với after, quá khứ đơn wrote cũng đúng.

Làm bài kiểm tra có chấm điểm của bài này và lưu tiến độ trên Mock Test.

Kiểm tra bài học

Câu hỏi thường gặp

Có phải cứ có before hoặc after là dùng quá khứ hoàn thành?
Không bắt buộc. Before / after đã cho biết thứ tự nên quá khứ đơn cũng đúng: After I finished work, I went to the gym.
Quá khứ hoàn thành khác hiện tại hoàn thành thế nào?
Hiện tại hoàn thành nối quá khứ với bây giờ (I have lost my key). Quá khứ hoàn thành nối một việc với một mốc khác trong quá khứ (I had lost my key, so I couldn't get in).

Bài ngữ pháp liên quan

Đọc thêm trên blog The Real IELTS

Luyện Past perfect trên Mock Test

Kiểm tra bài học có chấm điểm, câu sai tự vào lịch ôn tập, tiến độ lưu khi đăng nhập — miễn phí.

Luyện ngay trên Mock Test