From Old English 'sceald' (shallow)—a shoal is a dangerously shallow stretch of water, cognate with 'shallow.'
A shallow area of water, especially one that is a hazard to navigation; also, a large group of fish.
From Old English 'sceald' (shallow), from Proto-Germanic *skalwaz. Cognate with 'shallow' itself. The fish-group sense is a separate word from Middle Dutch 'schole' (a troop, a multitude), though the spellings merged. Key roots: *skalwaz (Proto-Germanic: "shallow").