+0
Hi,

If I want to ask someone about how long s/he has had hers/his pet, do I ask like "Do you have a pet? How long have you had the pet then?" By the way, I just wondering why it is "have had" rather than "have been". I am looking at a grammar book and the sentence is "who's had their pet the longest?".

Thanks in advance.
+0
It's "how long have you had it (her/him)?"

It's not "have you been" because you have a pet, you are not a pet!
+0
Hi,

Sometimes it's easier to understand the question form if you change it into a simple statement.

You'd say I have had a pet for 3 years

but not I have been a pet for 3 years.

Best wishes,

Clive