UNIT 12. How long have you (been) …?

UK-02 grammar


Bob and Alice 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)
(not How long are they married?)

They have been married for 20 years.
(not They are married for 20 years)


We use the present perfect (especially with how long, for, and since) to talk about something that began in the past and continues to the present time.
Compare the present and the present perfect:

Bill is in the hospital.
He has been in the hospital since Monday.
(not Bill is in the hospital since Monday)

Do you know each other well?
Have you known each other for a long time?
(no 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?

past ------------- present
  present perfect ---> |


I have known / had / lived, etc., is the present perfect simple.
I have been leaning / been waiting / been doing. etc., is the present perfect continuous.

When we ask or say “how long,” the continuous is more common:

I’ve been studying 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.”

Some verbs (for example, know / like / believe ) are not normally used in the continuous:

How long have you known Emily? (not have you been knowing)
I’ve had a stomachache all day. (not I’ve been having)


You can use either the present perfect continuous or simple with live and work:

John has been living / has lived in Montreal for a long time.
How long have you been working / have you worked here?

But we use the simple (I’ve lived / I’ve done, etc.) with always:

Have you always lived in the country? (not always been living)


We say “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)
Sue hasn’t called for ages. (= the last time she called was ages ago)