"Are there six or seven elephants?"
Translation:¿Hay seis o siete elefantes?
"Son" means "They/You (all) are" whereas "Hay" means "There is/are". Although the meanings are similar, they are different. So basically it depends on whether you want to say "they" or "there".
So, using this question as an example, "Son seis o siete elefantes" means "They are six or seven elephants" whereas "Hay seis o siete elefantes" means "There are six or seven elephants".
"Hay" is used more for a presence. When you want to emphasize the numerical aspect, use "son". "¿Hay seis o siete elefantes?" -Are there six or seven elephants? (Are six or seven elephants there? Do they exist?) vs. ¿Son seis o siete elefantes?- Are there six elephants or seven elephants? (I have some doubt about the number); which can then be answered saying "Son siete" (There are seven of them) or "Son seis" (there are six of them) or even "Son once; debes aprender a contar más bien" (There are eleven of them, you need to learn how to count better)