Learn English – Difference between “have” and “have been”

present-tense

Tell me all you know.

First of all I thought they both mean doing a continuous action until the very present, until I saw the other post on pretty much the same topic. I feel what that post provide is incomplete so seek to get a more complete understanding of their difference.

Here is what it says: have is less of a continuous action than have been.

Have worked here, may indicate that you have been working or are working until now. It may also indicate you no longer work here but did in the past. This however sounds to be like a situation in which "had" is more appropriate.

One of the comments on that post, provide an exception. If you say "I have worked here since two years ago" it means you still work here. Now, I am confused how so trivial a preposition may change what "have" means. Hope someone can provide more exceptions like this.

Best Answer

  1. I've worked here since two years ago

And

  1. I've been working here since two years ago.

The obvious difference between these sentences is the first sentence uses present perfect simple and the second sentence uses present perfect continuous. In many contexts, these tenses are interchangeable. However, we use present perfect continuous to emphasise the continuity of the action or event. Let's take a look at the sentences above, in the first sentence: The continuity of the event is not important. In the second sentence: You emphasise the lenght of time you're working there.

Another important thing about the usage of present perfect continuous and present perfect simple is, present perfect simple is typically used for stative verbs. For instance,

I've known him for six years.

It would sound weird if you say

I've been knowing him for six years.

To conclude, there is no quite difference between these two tenses. But the usage depends on the suitability in a context.

Related Topic