Vous obtiendrez l'erreur de nom de colonne ambiguë si vous exécutez votre requête sur SQL Server 2000 ou sous le niveau de compatibilité 80 ou moins. Sur sql server 2005/2008 avec un niveau de compatibilité 90 ou supérieur, votre requête s'exécute correctement.
À partir des documents de commande par clause :
"Dans SQL Server 2005, les noms de colonne qualifiés et les alias sont résolus en colonnes répertoriées dans la clause FROM. Si order_by_expression n'est pas qualifié, la valeur doit être unique parmi toutes les colonnes répertoriées dans l'instruction SELECT."