How long have you (been)...?

How long have you (been)...?

พิจารณาตัวอย่างต่อไปนี้

เกิดความผิดพลาด กรุณาแจ้งแอดมิน

Dan and Jenny are married. They got married exactly 20 years ago, so today is their 20th wedding anniversary.

They have been married for 20 years .

We say: They are married. ( present )

แต่ How long have they been married? ( present perfect ) ( ไม่ใช่ How long are they married?)

They have been married for 20 years. (ไม่ใช่ They are married for 20 years.)



เราใช้ present perfect สำหรับเหตุกาณที่เกิดขึ้นตั่งแต่อดีตและยังเกิดขึ้นอยู่จนถึงตอนนี้

เปรียบเทียบระหว่าง present กับ present perfect.

Paul is in hospital.
แต่ He's been in hospital since Monday. (= He has been...)
(ไม่ใช่ Paul is in hospital since Monday)

Do you know each other well?
แต่ Have you know each other for a long time?
(not Do you know)

She's waiting for somebody.
แต่ She's been waiting all morning.

Do they have a car?
แต่ How long have they had their car?


I have know / had / lived etc. คือ present perfects simple

I have been learning / been waiting / been doing etc. คือ present perfect continuous..

เมื่อเราใช้ประโยคที่มี 'how long', ส่วนมากจะใช้ในรูป continuous

I've been learning English for six months.

It's been raining since lunchtime.

Richard has been doing the same job for 20 years.

'How long have you been driving?' 'Since I was 17.'

กิริยาบางคำเช่น know / like / believeจะไม่ค่อยใช้ในรูป continuous:

How long have you know Jane? ( ไม่ใช่ have you been knowing)

I've had a pain in my stomach all day. (ไม่ใช่ I've been having)

เราสามารถใช้ present perfect continuous ก็ได้ หรือไม่ก็ใช้ simple กับ live และ work.

Julia has been living / has lived here for a long time.

How long have you been working / have you worked here?

แต่ให้ใช้ simple (I've lived / I've done etc. ) กับ always

I've always lived in the country. (ไม่ใช่ always been living)


เราใช้ 'I haven't done something since / for...' (present perfect simple):

I haven't seen Tom since Monday. ( = Monday was the last time I saw him)

Sarah hasn't phoned for ages. (= the last time she phoned was ages ago)

แบบฝึกหัด

Are the mark verbs rgiht or wrong ? Correct them where necessary.

  • 1 Ben is a friend of mine. I know him very well.   

  • 2 Ben is a friend of mine. I know him for a long time.   

  • 3 Sarah ans Adam are married since July.   

  • 4 The weather is awful. It's raining again.   

  • 5 The weather is awful. It's raining all day.   

  • 6 I like your house. How long are you living there?   

  • 7 Gray is working in a shop for the last few months.   

  • 8 I don't know Tom well. We've only met a few times   

  • 9 I gave up drinking coffee. I don't drink it for a year.   

  • 10 That's a very old bike. How long do you have it?   

Read the situations and write questions from the words in brackets.

  • 1 A friend tells you that Paul is in hospital. You ask him :
    (how / long / be / in hospital?)   

  • 2 You meet a woman who tells you that she teaches English. You ask her:
    (how / long / teach / English?)   

  • 3 You know that Jane is a good friend of Katherine's. You ask Jane:
    (how long / know / Katherine?)   

  • 4 Your friend's brother went to Australia some time ago and he's still there. You ask your friend :
    (how long / be / in Australia?)   

  • 5 Tom always wears the same jacket. It's a very old jacket. You ask him:
    (how long / have / that jacket?)   

  • 6 You are talking to a friend about Joe. Joe now works at the airport. You ask your friend:
    (how long / work / at the airport?)   

  • 7 A friend of yours is having guitar lessons. You ask him:
    (how long / have / guitar lessons?)   

  • 8 You meet somebody on a plane. She says that she lives in Chicago. You ask her:
    (always / live / in Chicago?)   

Complete B's answers to A's questions.

  • 1 A: Paul is in hospital, isn't he?
    B: Yes, he    in hospital since Monday.

  • 2 A: Do you see Ann very often?
    B: No , I    her for three months.

  • 3 A: Is Amy married?
    B: Yes, she    married for ten years.

  • 4 A: Are you waiting for me ?
    B: Yes , I    for the last half hour.

  • 5 A: You know Mel, don't you ?
    B: Yes, we    each other a long time.

  • 6 A: Do you still play tennis?
    B: No, I    tennis for years.

  • 7 A: Is Joe watching TV?
    B: Yes, he    TV all evening.

  • 8 A: Do you watch TV a lot?
    B: No, I    TV for ages.

  • 9 A: Do you have a headache?
    B: Yes, I    a headache all morning.

  • 10 A: Adrian is never ill, is he?
    B: No, he    ill since I've know him.

  • 11 A: Are you feeling ill?
    B: Yes, I    ill all day.

  • 12 A: Sue lives in Berlin, doesn't she?
    B: Yes, she    in berlin for the last few years.

  • 13 A: Do you go to the cinema a lot?
    B: No, I    to the cinema for ages.

  • 14 A: Would you like to go to New York one day?
    B: Yes, I    to go to New York. (use always / want )

No comments:

Post a Comment