sql >> Databasteknik >  >> RDS >> Sqlserver

Uppdatera tabell med slumpmässiga fält

Du bör tvinga databasmotorn att utvärdera nytt värde för varje rad. Du kan göra detta genom att lägga till dummy where-sats på yttre tabellen som:

DECLARE @city TABLE(ID INT IDENTITY(1, 1), City VARCHAR(100))

INSERT INTO @city VALUES
('Dallas'),
('New York'),
('Washington'),
('Las Vegas')


DECLARE @random TABLE(ID INT IDENTITY(1, 1), City VARCHAR(100))

INSERT INTO @random VALUES
('Manchester'),
('London'),
('Oxford'),
('Liverpool')


SELECT * FROM @city c
CROSS APPLY(SELECT TOP 1 * FROM @random r WHERE c.ID = c.ID ORDER BY NEWID()) ca

om du tar bort WHERE c.ID = c.ID du får samma värde för alla rader.




  1. Är det möjligt att använda sql%rowcount för SELECT?

  2. Entity Framework &Oracle:Kan inte infoga VARCHAR2> 1 999 tecken

  3. Infoga data i 3 tabeller åt gången med Postgres

  4. Att välja ett objekt som matchar flera taggar