Thì hiện tại hoàn thành là một trong những thì khó nhất với người học tiếng Việt — vì tiếng Việt không có khái niệm tương đương. Bài này giải thích rõ công thức have/has + V3, 4 cách dùng, vị trí của ever/never/just/already/yet và cách phân biệt với quá khứ đơn.
Thì hiện tại hoàn thành (Present Perfect) diễn tả kinh nghiệm, hành động vừa hoàn thành hoặc việc bắt đầu trong quá khứ và còn liên quan đến hiện tại — không nêu thời điểm cụ thể. Công thức: S + have/has + V3 (have với I/You/We/They, has với He/She/It); phủ định S + have/has not + V3; nghi vấn Have/Has + S + V3?. Dấu hiệu nhận biết: ever, never, already, yet, just, since, for.
| Dạng câu | Cấu trúc | Ví dụ |
|---|---|---|
| Khẳng định (I/You/We/They) |
S + have + V3 | I have visited Tokyo. They have finished the project. |
| Khẳng định (He/She/It) |
S + has + V3 | She has lived here for 5 years. He has worked there since 2020. |
| Phủ định | S + haven't/hasn't + V3 | I haven't seen that movie. She hasn't eaten yet. |
| Nghi vấn | Have/Has + S + V3? | Have you ever been to Paris? Has she called you? |
| Chủ ngữ | Dùng | Rút gọn |
|---|---|---|
| I, You, We, They | have | I've, You've, We've, They've |
| He, She, It | has | He's, She's, It's |
Lưu ý: He's có thể là "He is" hoặc "He has" — xác định qua ngữ cảnh. "He's gone" = "He has gone", "He's going" = "He is going".
Với động từ có quy tắc, V3 = V-ed (giống dạng quá khứ đơn). Cần đặc biệt chú ý các động từ bất quy tắc có V3 riêng.
| V1 (Hiện tại) | V2 (Quá khứ) | V3 (Phân từ) | Nghĩa |
|---|---|---|---|
| be | was/were | been | là, ở |
| have | had | had | có |
| do | did | done | làm |
| go | went | gone | đi |
| see | saw | seen | nhìn thấy |
| eat | ate | eaten | ăn |
| write | wrote | written | viết |
| speak | spoke | spoken | nói |
| take | took | taken | lấy, chụp |
| give | gave | given | cho |
| know | knew | known | biết |
| get | got | gotten/got | nhận được |
| come | came | come | đến |
| run | ran | run | chạy |
| become | became | become | trở thành |
| find | found | found | tìm thấy |
| make | made | made | làm, tạo |
| think | thought | thought | nghĩ |
| buy | bought | bought | mua |
| bring | brought | brought | mang đến |
| fall | fell | fallen | ngã, rơi |
| fly | flew | flown | bay |
| drive | drove | driven | lái xe |
| forget | forgot | forgotten | quên |
| break | broke | broken | gãy, vỡ |
| choose | chose | chosen | chọn |
| lose | lost | lost | mất, thua |
| meet | met | met | gặp |
| leave | left | left | rời đi |
| win | won | won | thắng |
Nói về việc gì đó bạn đã hoặc chưa bao giờ làm trong cuộc đời (không xác định thời điểm cụ thể).
Have you ever eaten Japanese food? (Bạn đã bao giờ ăn đồ Nhật chưa?)
I have never been to Europe. (Tôi chưa bao giờ đến châu Âu.)
Diễn tả việc gì đó vừa mới xảy ra rất gần đây.
I have just finished my homework. (Tôi vừa mới làm xong bài tập.)
She has just arrived at the airport. (Cô ấy vừa mới đến sân bay.)
Already: hành động đã hoàn thành, thường sớm hơn dự kiến. Yet: hành động chưa hoàn thành hoặc hỏi đã xảy ra chưa.
I have already eaten. (Tôi ăn rồi — đã ăn từ trước rồi.)
I haven't eaten yet. (Tôi chưa ăn.)
Have you eaten yet? (Bạn ăn chưa?)
Diễn tả hành động hoặc trạng thái bắt đầu từ quá khứ và vẫn còn đang tiếp tục ở hiện tại.
I have lived here for 5 years.
I have lived here since 2020.
Đây là điểm người Việt hay nhầm nhất. Quy tắc vàng cần nhớ:
Ví dụ: "I saw that movie last week" (last week = thời điểm cụ thể → QKĐ)
Ví dụ: "I have seen that movie" (không nói khi nào → HTHTH, kinh nghiệm)
| Tiêu chí | Hiện Tại Hoàn Thành | Quá Khứ Đơn |
|---|---|---|
| Thời điểm cụ thể | ❌ Không có hoặc không đề cập | ✅ Có (yesterday, in 2020, ago) |
| Liên quan đến hiện tại | ✅ Có liên quan/ảnh hưởng | ❌ Đã xong, không liên quan |
| Câu hỏi | Have you ever been to Japan? | When did you go to Japan? |
| Trả lời | I've been to Japan. (kinh nghiệm) | I went in 2019. (thời điểm cụ thể) |
| Ví dụ | She has lost her keys. (vẫn chưa tìm được) | She lost her keys yesterday. (ngày cụ thể) |
| Dấu hiệu | ever, never, just, already, yet, for, since | yesterday, last, ago, in [năm] |
❌ Sai: I have gone to Hanoi last year.
✅ Đúng: I went to Hanoi last year. (có "last year" → QKĐ)
❌ Sai: I have seen him yesterday.
✅ Đúng: I saw him yesterday. (có "yesterday" → QKĐ)
❌ Sai: I have visited my aunt last Sunday.
✅ Đúng: I visited my aunt last Sunday.
Giải thích: "last Sunday" là thời điểm cụ thể → phải dùng quá khứ đơn.
❌ Sai: She have never tried pho.
✅ Đúng: She has never tried pho.
Giải thích: Chủ ngữ là "She" (ngôi thứ 3 số ít) → phải dùng "has", không phải "have".
❌ Sai: I have saw that movie. ("saw" là V2)
✅ Đúng: I have seen that movie. ("seen" là V3)
Giải thích: Sau have/has luôn dùng V3 (quá khứ phân từ), không phải V2 (quá khứ đơn). see: V2 = saw, V3 = seen.
Chọn đáp án đúng. Nhấn vào đáp án để kiểm tra.
312 bài tập ngữ pháp · Miễn phí · Không cần đăng ký
Luyện ngữ pháp ngay →