sql >> Base de Datos >  >> RDS >> Sqlserver

Preservar ORDEN POR en SELECCIONAR EN

Sé que esto es un poco viejo, pero necesitaba hacer algo similar. Quería insertar el contenido de una tabla en otra, pero en orden aleatorio. Descubrí que podía hacer esto usando select top n y order by newid() . Sin la 'n superior', el orden no se conservó y la segunda tabla tenía filas en el mismo orden que la primera. Sin embargo, con 'top n', se conservó el orden (aleatorio en mi caso). Usé un valor de 'n' que era mayor que el número de filas. Así que mi consulta estaba en la línea de:

insert Table2 (T2Col1, T2Col2)
  select top 10000 T1Col1, T1Col2
  from Table1
  order by newid()