[deleted]
I think you will see a very large variance based more on where the battle was fought than the time frame. Some large engagements may take all day while others might be over in a few hours.
But just because a battle was small doesn't mean it couldn't go on for a long time.
Bushy Run, for example, involves a total of about 700 men on both sides and lasts for about 21 hours.
Waterloo goes on from morning until dark essentially.
The Battle of Aboukir Bay lasts three days, technically although most of the action is from about goes for about 7 hours on the first day.
I think finding an average you'd need to define where the battle took place (land vs. sea), size of what you consider a battle and at least limit it to one century or better yet one period.