Jag vill updatera en tabell och lägga till ett random nummer i en av kolumnerna på varje rad men kan inte komma på hur jag ska göra det.
Jag har fösökt med följande kod men då får jag samma nummer på varje rad men jag vill altså ha ett nytt nummer (inte nödvändigtvis unikt) på varje rad,
UPDATE test2 SET t1=(
SELECT ROUND(dbms_random.value(1,99)) FROM dual
)
WHERE test2 IN (SELECT test2 FROM test2);
Lite dumma namn kanske, test2 är namnet på tabellen OCH namnet på id kolumnen...
Eftersom jag inte känner igen syntaxen på din kod ger jag det allmänna rådet om Randomize i VBScript, dvs slumpgeneratorn måste startas om varje gång man ska slumpa.
Glömde den här :)
Det är löst, det var bara att ta bort select satsen och skriva såhär istället
UPDATE test2 SET t1=dbms_random.value(1,99)
WHERE test2 IN (SELECT test2 FROM test2);
Vet inte varför jag inte kom på det själv, så enkelt :)
J.N. skrev:
HEJ!
Eftersom jag inte känner igen syntaxen på din kod ger jag det allmänna rådet om Randomize i VBScript, dvs slumpgeneratorn måste startas om varje gång man ska slumpa.
Eftersom jag kör i Oracle så fungerar inte VBScript så jätte bra. dbms_random.value ger just ett random värde, vad jag behövde var ett sätt att få ett nytt värde på varje rad istället för samma som det blev med min första update sats.
/Viktor
258 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2