Utilisez la fonction DATEDIFF :
ROUND(DATEDIFF(end_date, start_date)/7, 0) AS weeksout
Le problème avec WEEKS est qu'il ne renvoie pas de résultats corrects pour les dates qui traversent le 1er janvier.
Le 0
est le nombre de décimales à utiliser dans le ROUND
fonction.