Dùng for với một khoảng thời gian, để nói sự việc diễn ra trong bao lâu: for five years, for a week, for two hours.
for + một khoảng thời gian
I have lived here for five years.
She has worked there for six months.
We have known each other for a long time.
Thử ngay: She has worked at the clinic ___ six months. (for / since / from) Đáp án: for — Six months là một khoảng thời gian (bao lâu), nên dùng for: for six months. "Since" dùng cho mốc thời gian bắt đầu (since January), còn "from" không dùng với thì hiện tại hoàn thành ở đây.
since + một mốc thời gian
Dùng since với một mốc thời gian, để nói sự việc bắt đầu từ khi nào: since Monday, since 2019, since I was a child.
I have lived here since 2019.
She has worked there since January.
We have known each other since school.
Thử ngay: Hiroshi has lived in Haffenville ___ 2019. (since / for / from) Đáp án: since — 2019 là mốc thời gian bắt đầu, nên dùng since: since 2019. "For" dùng cho một khoảng thời gian (for five years), còn "from" thì cần đi kèm với "to" phía sau.
Hiện vẫn còn đúng: have / has done
Với for và since, sự việc bắt đầu từ trước và vẫn đúng ở hiện tại, nên hãy dùng have / has + quá khứ phân từ, không dùng thì hiện tại đơn hay thì quá khứ đơn.
I have studied English for two years. (I still study it.)
We have stayed at this hotel since Friday.
Camila has lived here since she was young.
Not "I live here for three years." — say "I have lived here for three years.". Việc này bắt đầu từ trước và hiện vẫn đúng, nên dùng have lived, không dùng dạng đơn "live".
Thử ngay: We ___ each other since school. (have known / know / knew) Đáp án: have known — Việc này bắt đầu từ hồi đi học và đến nay vẫn đúng, nên dùng have known. "Know" chỉ nói về hiện tại, còn "knew" nghe như đã kết thúc và bạn không còn quen biết họ nữa.
Phủ định và câu hỏi với How long?
Để tạo câu phủ định, thêm n't vào have/has: haven't (have not) / hasn't (has not) + quá khứ phân từ. Để hỏi bao lâu, bắt đầu bằng How long have / has …?
I haven't seen Camila since Monday.
He hasn't lived here for long.
We haven't lived here since we were children — only since last year.
How long have you lived in Haffenville?
How long has she worked at the clinic?
Not "How long you have lived here?" — say "How long have you lived here?". Trong câu hỏi, have đứng trước you: How long have you lived…?
Thử ngay: ___ have you lived in Haffenville? (How long / How much / How many) Đáp án: How long — Để hỏi về khoảng thời gian từ lúc bắt đầu cho tới nay, hãy dùng How long have / has …? "How much" dùng để hỏi lượng và "How many" dùng để hỏi số lượng, chứ không hỏi khoảng thời gian.
Thử ngay: I ___ seen Camila since Monday. (haven't / don't / didn't) Đáp án: haven't — Cụm quá khứ phân từ (have + seen) tạo câu phủ định bằng haven't / hasn't: I haven't seen. "Don't" và "didn't" dùng cho thì hiện tại đơn và quá khứ đơn, không đi với have/has + quá khứ phân từ.
for hay since? (kiểm tra nhanh)
Hãy tự hỏi: đây là một khoảng thời gian hay một mốc bắt đầu? Khoảng thời gian (bao lâu) → for. Mốc thời gian bắt đầu → since. Mẹo nhỏ: nếu bạn có thể thêm "the last…" phía trước (the last five years), thì thường sẽ đi với for.
for two weeks, for an hour, for ages → a length → for
since Tuesday, since 9 o'clock, since we met → a starting point → since
I've been busy for three days. / I've been busy since Monday.
Not "I have known her for last year." — say "I have known her since last year.". "Last year" là một mốc thời gian (thời điểm bắt đầu), nên dùng since, không dùng for.
Thử ngay: Lars has played the guitar ___ ten years, and in a band ___ last summer. (for … since / since … for / for … for) Đáp án: for … since — Ten years là một khoảng thời gian → for. Last summer là mốc thời gian bắt đầu → since. Khoảng thời gian đi với for; mốc thời gian bắt đầu đi với since.