Bagaimana cara menggunakan kalimat How Long Have You (Been) ...?

Pelajari situasi berikut:
Brian and May are married. They got married exactly 20 years ago, so today is their 20th wedding anniversary.
They have been married for 20 years.

Kita mengatakan:
They are married. (present)

but How long have they been married? (present perfect)
(bukan ‘How long are they married?’)

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


Kita menggunakan present perfect untuk membicarakan sesuatu yang dimulai dari masa lampau dan masi berlanjut hingga sekarang. Bandingkan antara kalimat present dan present perfect berikut:

  • Amy is in hospital.
    She has been in hospital since Monday. (bukan ‘Amy is in hospital since Monday’)
  • We know each other very well.
    We have been know each otherfor a long time. bukan ‘we know’)
  • Are you waiting for somebody?
    How long have you been waiting*?

I have been doing something (present perfect continuous) = ‘Saya sudah melakukan sesuatu di masa lalu dan saya masih melakukannya (atau baru saja berhenti)’:

  • I’ve have been learning English for a long time. (bukan ‘I am learning’)
  • Sorry I’m late. Have you been waiting long?
  • It’s been raining since I got up this morning.

Kegiatan yang di lakukan bisa merupakan kegiatan berulang:

  • How long have you been driving?’ ‘Since I was 17 years old.’

I have done (simple) or Ihave been doing (continuous)
Kalimat continuous biasanya menggunakan how long, since dan for.

  • I’ve been learning English for a long time. (_bukan ‘I’ve learnt’)

Anda bisa menggunakan kalimat continuous atau simple dengan kata live dan work:

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

Namun kita menggunakan simple dengan kata always:

  • John has always lived in London. (bukan ‘has always been living’)

Anda bisa menggunakan kalimat continuous atau simple untuk kegiatan berulang dalam waktu yang lama:

  • I’ve been collecting / I’ve collected stamps since I was a child.

Beberapa verb (contohnya, know/like/believe) umumnya tidak digunakan dalam kalimat continuous:

  • How long have you known Jane? (bukan ‘have you been knowing’)
  • I’ve had a pain in my stomach since I got up this morning.

Kita menggunakan present perfect simple pada kalimat negatif seperti berikut:

  • I haven’t seen Tom since Monday. (=Senin adalah hari terakhir sejak saya melihat Tom)
  • Jane hasn’t phoned me for two weeks. (=terakhir kali Jane menelepon adalah dua minggu yang lalu).

Sumber:
Murphy, Raymond. 1994. English Grammar In In Use Second Edition. Press Syndicate: University of Cambridge.