Thì hiện tại hoàn thành (Present Perfect Tense) được dùng để nói về một hành động đã xảy ra trong quá khứ nhưng vẫn có mối liên hệ với hiện tại. Người học thường gặp thì này khi nói về kinh nghiệm, một việc vừa mới xảy ra, kết quả còn nhìn thấy ở hiện tại hoặc một trạng thái bắt đầu trong quá khứ và vẫn tiếp tục đến bây giờ.

Công thức thì hiện tại hoàn thành với have has và động từ quá khứ phân từ
Ba cấu trúc cơ bản của thì hiện tại hoàn thành.

1. Thì hiện tại hoàn thành là gì?

Thì hiện tại hoàn thành diễn tả một sự việc có điểm bắt đầu ở quá khứ nhưng người nói quan tâm đến kết quả, kinh nghiệm hoặc ảnh hưởng của sự việc ở hiện tại. Vì thế, tên của thì có từ “hiện tại” dù hành động đã xảy ra trước thời điểm nói.

  • I have lost my key. – Tôi đã làm mất chìa khóa. Hiện giờ tôi vẫn chưa có chìa khóa.
  • She has visited Singapore twice. – Cô ấy đã đến Singapore hai lần tính đến hiện tại.
  • We have lived here for five years. – Chúng tôi đã sống ở đây được năm năm và hiện vẫn sống ở đây.

2. Công thức thì hiện tại hoàn thành

Câu khẳng định

Chủ ngữ + have/has + V3/ed + phần còn lại

  • I have finished my work.
  • She has cleaned the room.
  • They have seen this movie.

Câu phủ định

Chủ ngữ + have/has + not + V3/ed + phần còn lại

  • I have not finished my work.
  • He has not called me.
  • We have not eaten lunch.

Dạng viết tắt thường dùng:

  • have not → haven't
  • has not → hasn't

Câu nghi vấn

Have/Has + chủ ngữ + V3/ed + phần còn lại?

  • Have you finished your homework?
  • Has she arrived yet?
  • Have they ever been to Thailand?

Câu trả lời ngắn

  • Have you eaten? – Yes, I have. / No, I haven't.
  • Has he arrived? – Yes, he has. / No, he hasn't.

3. Khi nào dùng have và khi nào dùng has?

Have dùng với các chủ ngữ I, you, we, they và danh từ số nhiều.

  • I have completed the report.
  • You have changed a lot.
  • My parents have gone shopping.

Has dùng với he, she, it, tên một người và danh từ số ít.

  • He has bought a new phone.
  • Lan has learned English for three years.
  • The dog has eaten its food.

4. Động từ V3 là gì?

V3 là dạng quá khứ phân từ của động từ. Với động từ có quy tắc, V3 thường được tạo bằng cách thêm -ed. Với động từ bất quy tắc, người học cần ghi nhớ dạng riêng.

  • work → worked → worked
  • clean → cleaned → cleaned
  • go → went → gone
  • see → saw → seen
  • eat → ate → eaten
  • write → wrote → written
  • do → did → done

Không dùng V2 sau have hoặc has.

  • Sai: She has went home.
  • Đúng: She has gone home.

5. Cách dùng thứ nhất: hành động vừa mới xảy ra

Thì hiện tại hoàn thành có thể diễn tả một việc vừa xảy ra và kết quả của nó vẫn quan trọng ở hiện tại. Các từ thường gặp là just, recentlylately.

  • I have just finished dinner. – Tôi vừa ăn tối xong.
  • She has recently started a new job. – Gần đây cô ấy đã bắt đầu một công việc mới.
  • We have seen him lately. – Gần đây chúng tôi có gặp anh ấy.

Just thường đứng giữa have/has và V3.

6. Cách dùng thứ hai: kết quả còn liên quan đến hiện tại

Người nói không tập trung vào thời điểm hành động xảy ra mà tập trung vào kết quả hiện tại.

  • I have broken my glasses. – Tôi đã làm vỡ kính, vì vậy hiện tại không dùng được.
  • She has lost her phone. – Cô ấy đã làm mất điện thoại và hiện chưa tìm thấy.
  • It has stopped raining. – Trời đã ngừng mưa, hiện tại không còn mưa nữa.

Nếu người nói nêu rõ thời điểm đã kết thúc trong quá khứ, cần dùng quá khứ đơn thay vì hiện tại hoàn thành.

7. Cách dùng thứ ba: trải nghiệm tính đến hiện tại

Thì hiện tại hoàn thành dùng để nói về trải nghiệm trong cuộc đời mà không nêu thời điểm cụ thể.

  • I have traveled by plane. – Tôi đã từng đi máy bay.
  • Have you ever tried Korean food? – Bạn đã từng thử món Hàn chưa?
  • She has never seen snow. – Cô ấy chưa bao giờ nhìn thấy tuyết.
  • They have visited Hue three times. – Họ đã đến Huế ba lần.

Ever mang nghĩa “đã từng” và thường xuất hiện trong câu hỏi. Never mang nghĩa “chưa bao giờ” và bản thân đã có nghĩa phủ định nên không dùng thêm not.

8. Cách dùng thứ tư: hành động bắt đầu trong quá khứ và vẫn tiếp tục

Thì hiện tại hoàn thành được dùng với các động từ chỉ trạng thái hoặc tình trạng kéo dài như live, know, work, study, love, like, own và be.

  • I have lived here for ten years. – Tôi đã sống ở đây mười năm và hiện vẫn sống ở đây.
  • She has known him since childhood. – Cô ấy đã biết anh ấy từ thời thơ ấu.
  • We have worked together since 2022. – Chúng tôi đã làm việc cùng nhau từ năm 2022.
Phân biệt since và for trong thì hiện tại hoàn thành
Since đi với mốc thời gian; for đi với khoảng thời gian.

9. Cách dùng since và for

Since có nghĩa là “kể từ” và đi với một mốc thời gian.

  • since 2020
  • since Monday
  • since last month
  • since I was a child

Ví dụ:

  • I have studied English since 2020.
  • He has been busy since Monday.

For có nghĩa là “trong, được” và đi với một khoảng thời gian.

  • for two hours
  • for three weeks
  • for many years
  • for a long time

Ví dụ:

  • We have waited for two hours.
  • She has lived here for a long time.

10. Already, yet và just

Already

Already có nghĩa là “đã rồi”, thường dùng trong câu khẳng định. Nó thường đứng giữa have/has và V3.

  • I have already sent the email.
  • She has already finished the book.

Yet

Yet có nghĩa là “chưa” trong câu phủ định và “chưa, rồi chưa” trong câu hỏi. Từ này thường đứng cuối câu.

  • I haven't finished yet.
  • Has the bus arrived yet?

Just

Just có nghĩa là “vừa mới” và thường đứng giữa have/has với V3.

  • He has just left.
  • We have just heard the news.

11. Dấu hiệu nhận biết thường gặp

Các từ và cụm từ thường xuất hiện với thì hiện tại hoàn thành gồm:

  • just – vừa mới
  • already – đã rồi
  • yet – chưa, rồi chưa
  • ever – đã từng
  • never – chưa bao giờ
  • recently, lately – gần đây
  • so far, up to now, until now – cho đến nay
  • since + mốc thời gian
  • for + khoảng thời gian
  • once, twice, three times – một lần, hai lần, ba lần

Dấu hiệu nhận biết chỉ mang tính hỗ trợ. Điều quan trọng nhất vẫn là hiểu mối liên hệ giữa hành động quá khứ và hiện tại.

12. Been và gone khác nhau thế nào?

Cả beengone đều là dạng V3 liên quan đến động từ go, nhưng ý nghĩa khác nhau.

  • She has gone to the supermarket. – Cô ấy đã đi siêu thị và hiện chưa trở về.
  • She has been to the supermarket. – Cô ấy đã từng đến siêu thị hoặc đã đi rồi và hiện đã trở về.

Cấu trúc have/has been to thường dùng để nói về trải nghiệm đến một nơi nào đó.

13. Phân biệt hiện tại hoàn thành và quá khứ đơn

Phân biệt thì hiện tại hoàn thành và thì quá khứ đơn
Hiện tại hoàn thành không nêu thời điểm quá khứ đã kết thúc; quá khứ đơn thường có thời điểm rõ ràng.

Dùng hiện tại hoàn thành khi:

  • Không nêu thời điểm quá khứ cụ thể.
  • Kết quả vẫn còn liên quan đến hiện tại.
  • Nói về trải nghiệm tính đến hiện tại.
  • Hành động bắt đầu trong quá khứ và vẫn tiếp tục.

Ví dụ: I have visited Da Nang.

Dùng quá khứ đơn khi:

  • Thời điểm xảy ra đã được nêu rõ và đã kết thúc.
  • Có các từ yesterday, last week, ago, in 2022...

Ví dụ: I visited Da Nang last year.

So sánh:

  • I have seen this movie. – Tôi đã xem bộ phim này, không nói rõ lúc nào.
  • I saw this movie yesterday. – Tôi xem bộ phim này hôm qua.

14. Câu hỏi với How long

How long dùng để hỏi một hành động hoặc trạng thái đã kéo dài bao lâu.

How long + have/has + chủ ngữ + V3?

  • How long have you lived here?
  • How long has she worked at this company?
  • How long have they known each other?

Câu trả lời thường dùng since hoặc for.

  • I have lived here for six years.
  • She has worked there since 2021.

15. Những lỗi thường gặp

Dùng V2 thay cho V3

Sai: He has wrote a letter.

Đúng: He has written a letter.

Dùng sai have và has

Sai: She have finished her work.

Đúng: She has finished her work.

Dùng thời gian quá khứ đã kết thúc

Sai: I have met him yesterday.

Đúng: I met him yesterday.

Dùng since với khoảng thời gian

Sai: I have lived here since five years.

Đúng: I have lived here for five years.

Dùng for với mốc thời gian

Sai: She has worked here for 2022.

Đúng: She has worked here since 2022.

Phủ định hai lần với never

Sai: I haven't never tried sushi.

Đúng: I have never tried sushi.

16. Ví dụ giao tiếp thực tế

  • Have you eaten yet? – Bạn ăn chưa?
  • Yes, I have just eaten. – Rồi, tôi vừa ăn xong.
  • Has Lan arrived yet? – Lan đến chưa?
  • No, she hasn't arrived yet. – Chưa, cô ấy chưa đến.
  • Have you ever been to Hanoi? – Bạn đã từng đến Hà Nội chưa?
  • Yes, I have been there twice. – Rồi, tôi đã đến đó hai lần.
  • How long have you studied English? – Bạn đã học tiếng Anh bao lâu?
  • I have studied English for three years. – Tôi đã học tiếng Anh được ba năm.

17. Mẹo ghi nhớ nhanh

Have/has + V3: việc đã xảy ra nhưng vẫn liên quan đến hiện tại.

  • I, you, we, they → have
  • He, she, it → has
  • Since → mốc thời gian
  • For → khoảng thời gian
  • Có yesterday, last..., ago hoặc thời điểm đã kết thúc → thường dùng quá khứ đơn

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

Thì hiện tại hoàn thành có bắt buộc phải dùng since hoặc for không?

Không. Since và for chỉ là hai dấu hiệu thường gặp khi diễn tả hành động kéo dài. Thì hiện tại hoàn thành còn được dùng với just, already, yet, ever, never hoặc không có trạng từ đặc biệt.

Có dùng hiện tại hoàn thành với yesterday không?

Thông thường không. Yesterday là thời điểm quá khứ đã kết thúc nên câu cần dùng quá khứ đơn.

Have been và have gone khác nhau thế nào?

Have gone thường cho biết người đó đã đi và chưa trở về. Have been thường cho biết người đó đã từng đến hoặc đã đi và đã trở về.

Khi nào dùng hiện tại hoàn thành thay cho quá khứ đơn?

Dùng hiện tại hoàn thành khi không nêu thời điểm đã kết thúc và sự việc vẫn có liên hệ với hiện tại. Dùng quá khứ đơn khi thời điểm quá khứ rõ ràng hoặc sự việc đã hoàn toàn kết thúc.

Kết luận

Thì hiện tại hoàn thành có cấu trúc chính là have/has + V3/ed. Thì này được dùng để nói về trải nghiệm, sự việc vừa xảy ra, kết quả còn liên quan đến hiện tại và hành động bắt đầu trong quá khứ nhưng vẫn tiếp tục. Để sử dụng chính xác, hãy ghi nhớ cách chia have và has, học các động từ bất quy tắc, phân biệt since với for và tránh dùng thì này với những thời điểm quá khứ đã kết thúc như yesterday hoặc last year.