Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SQL Server 2012 Chaîne aléatoire d'une liste

Vous pouvez le faire avec l'astuce suivante :

update c set name=ca.name
from contacts c
outer apply(select top 1 name 
            from (values('bill'),('steve'),('jack')) n(name)
            where c.id = c.id order by newid())ca;

c.id = c.id est juste un prédicat factice qui force le moteur sql à appeler une sous-requête pour chaque ligne externe. Voici le violon http://sqlfiddle.com/#!6/8ecca/22