meses entre dos fechas en el servidor sql con la fecha de inicio y finalización de cada una de ellas en el servidor sql

Quiero obtener meses entre dos fechas con sus fechas de inicio y finalización. Supongamos que si ingreso fecha de inicio como "2017-04-01" y fecha de finalización como "2017-07-31", quiero una lista de meses, es decir, abril, mayo, junio , Julio con su fecha de inicio y finalización respectivamente. Amablemente sugiérame cómo se puede lograr.

Respuestas a la pregunta(6)

Su respuesta a la pregunta