I was wondering if this sentence is grammatically correct:
"Yesterday Ann told me that Nick has a football match today"
Is it ok to put it like this? When is it possible to use both past and present tenses in one sentence?
English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It only takes a minute to sign up.Sign up to join this community
I'm not sure on the technical details, but here's how it feels to a native speaker:
The time that the action took place can be completely separated from the action itself. The action is:
Ann told me that Nick has a football match today
and in your question, the time that the action took place is yesterday.
Try replacing yesterday with any other time that makes sense (i.e. any time not in the future).
This morning Ann told me that Nick has a football match today.
A week ago Ann told me that Nick has a football match today.
On New Year's Eve Ann told me that Nick has a football match today.
You're not mixing tenses, you're placing an action at a specific point in time.
In reported speech, the speaker can use the present tense if he or she believes what is being said is still true. If the game has not yet happened, it is perfectly natural to use the present tense here. It would also be correct if the speaker used the simple past. What would be incorrect would be to use the present tense if the speaker thinks the situation is no longer true, for example the football game is already over.
It depends what Ann said exactly.
She spoke to you yesterday.
Did she say: "Nick has a football match today", in which case the match actually took place on the day she spoke to you.
Or did she say: "Nick has a football match tomorrow", in which case the match took place one day after she spoke to you, but you are talking of this chat "today" which is also the day of the match.
In case 1 (she said: "Nick has a football match today"), the sentence is wrong, tenses need to be coordinated properly: "Yesterday, Ann told me that Nick had a football match". (no need to repeat "yesterday" again at the end).
In case 2 (She said ""Nick has a football match tomorrow"), the sentence is correct in a spoken context because you adjusted the time markers.
In a formal context however, you should adjust the tenses (as well as the time markers where appropriate): "yesterday, Ann told me that Nick would have a football match today".