Công thức Thì hiện tại hoàn thành
4 dạng, xếp từ hay gặp nhất.
- 1
Khẳng định
S + have/has + V3/ed
I, you, we, they và danh từ số nhiều dùng have; he, she, it và danh từ số ít dùng has. Động từ bất quy tắc lấy cột 3 (go → gone, write → written).
- We have lived in Hà Nội since 2018.Nhà mình sống ở Hà Nội từ năm 2018 (đến giờ vẫn ở).
- My sister has already finished her homework.Chị mình làm xong bài tập rồi.
- The town has built three new parks this year.Năm nay thị trấn đã xây ba công viên mới.
- 2
Phủ định
S + have/has + not + V3/ed (haven't / hasn't)
Hay đi với yet ở cuối câu, hoặc với for/since để nói đã lâu không làm gì.
- I haven't seen my cousin for two years.Hai năm rồi mình chưa gặp đứa em họ.
- He hasn't replied to my message yet.Cậu ấy vẫn chưa trả lời tin nhắn của mình.
- 3
Nghi vấn
Have/Has + S + V3/ed…? / Wh- + have/has + S + V3/ed…?
Câu hỏi về kinh nghiệm hay dùng ever; hỏi khoảng thời gian dùng How long.
- Have you ever been to Phú Quốc?Bạn đã bao giờ đến Phú Quốc chưa?
- How long has your dad worked at this company?Bố bạn làm ở công ty này bao lâu rồi?
- 4
Viết lại câu với last / ago / since
S + last + V2 + … + time + ago = S + haven't/hasn't + V3 + for + time = It's + time + since + S + last + V2
Dạng viết lại câu ra đều đặn trong đề chính thức. Lần cuối làm gì cách đây bao lâu nghĩa là đã bao lâu rồi chưa làm lại, nên câu viết lại ở thể phủ định.
- I last went swimming three months ago. → I haven't gone swimming for three months.Lần cuối mình đi bơi là ba tháng trước. → Ba tháng rồi mình chưa đi bơi.
- The last time she visited her grandma was in May. → She hasn't visited her grandma since May.Lần cuối cô ấy thăm bà là hồi tháng Năm. → Từ tháng Năm đến giờ cô ấy chưa thăm bà.
- It's two years since we last met.Đã hai năm từ lần cuối tụi mình gặp nhau.
Khi nào dùng?
1.Việc bắt đầu trong quá khứ, còn kéo dài đến hiện tại (thường có since, for).
- Mai has played the piano for six years.Mai chơi piano được sáu năm rồi (giờ vẫn chơi).
2.Kinh nghiệm, những việc đã từng làm hay chưa từng làm, không nói rõ lúc nào.
- I have never tried bún chả in Huế.Mình chưa bao giờ ăn bún chả ở Huế.
- She has visited Singapore three times.Cô ấy đã đến Singapore ba lần.
3.Việc vừa mới xảy ra, kết quả còn thấy ở hiện tại (just, already, recently).
- Oh no, I've just broken my phone screen!Thôi xong, mình vừa làm vỡ màn hình điện thoại!
4.Kết quả tính đến bây giờ, trong khoảng thời gian chưa kết thúc (so far, up to now, this week, today).
- Our team has won four matches so far this season.Mùa này đến giờ đội mình thắng bốn trận rồi.
5.Sau cấu trúc This is the first/second time và sau so sánh nhất.
- This is the first time I have flown on a plane.Đây là lần đầu tiên mình đi máy bay.
- It's the best film I have ever watched.Đó là bộ phim hay nhất mình từng xem.
Dấu hiệu nhận biết
Thấy những chữ này trong câu là nghĩ ngay tới cấu trúc này.
- since + mốc thời gian
- for + khoảng thời gian
- already
- yet
- just
- ever
- never
- recently
- lately
- so far
- up to now
- until now
- this is the first time
- several times
Phân biệt
Hiện tại hoàn thành và Quá khứ đơn
Quá khứ đơn dùng khi có thời gian cụ thể, việc đã xong hẳn (yesterday, last week, ago, in 2020). Hiện tại hoàn thành không nói rõ lúc nào, hoặc việc còn liên quan đến bây giờ.
- I lost my wallet yesterday.Hôm qua mình làm mất ví (chỉ kể lại chuyện hôm qua).
- I have lost my wallet.Mình làm mất ví rồi (giờ vẫn chưa tìm thấy).
since và for
Since đi với mốc thời gian (since 2020, since Monday, since I was ten). For đi với khoảng thời gian (for three years, for a long time).
- He has studied French since 2021.Cậu ấy học tiếng Pháp từ năm 2021.
- He has studied French for three years.Cậu ấy học tiếng Pháp được ba năm.
have been to và have gone to
Have been to là đã từng đến và đã về. Have gone to là đã đi và giờ vẫn đang ở đó hoặc đang trên đường.
- Lan has been to Đà Lạt twice.Lan đã đến Đà Lạt hai lần (giờ đang ở nhà).
- Lan has gone to Đà Lạt.Lan đi Đà Lạt rồi (giờ không có ở đây).
Bẫy đề thi
Những chỗ đề hay gài và học sinh hay sai.
- 1
I have met him two days ago.
I met him two days ago.
Có ago là mốc quá khứ cụ thể, phải dùng quá khứ đơn. Hiện tại hoàn thành không đi với ago, last, yesterday.
- 2
She has worked here since five years.
She has worked here for five years.
Five years là khoảng thời gian, đi với for. Since chỉ đi với mốc (since 2021).
- 3
She last phoned home two weeks ago. → She has phoned home for two weeks.
She last phoned home two weeks ago. → She hasn't phoned home for two weeks.
Lần cuối gọi là hai tuần trước nghĩa là hai tuần nay chưa gọi lại, nên phải phủ định. Đề chính thức năm nào cũng cài phương án khẳng định này.
- 4
Her English has improved since she has joined the club.
Her English has improved since she joined the club.
Mệnh đề sau since chỉ mốc bắt đầu trong quá khứ, nên chia quá khứ đơn. Vế chính mới dùng hiện tại hoàn thành.
- 5
My parents have gone to Japan three times.
My parents have been to Japan three times.
Nói số lần đã từng đến (và đã về) thì dùng been to. Gone to là đi rồi, chưa về.
- 6
I have saw that video on TikTok before.
I have seen that video on TikTok before.
Sau have/has phải là V3 (cột 3), không phải V2. See → saw → seen, go → went → gone, write → wrote → written.
