ViktorMedlem sedan aug. 20021 752 inlägg 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...
/Viktor
J.N.Medlem sedan apr. 20031 660 inlägg 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.
Det verkar som du missat och behöver det?
http://www.devguru.com/Technologies/vbscript/quickref/randomize.html
@ndersMedlem sedan juni 200032 969 inlägg Vad använder du för dbms?
ViktorMedlem sedan aug. 20021 752 inlägg
@nders skrev:
Vad använder du för dbms?
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.
Det verkar som du missat och behöver det?
http://www.devguru.com/Technologies/vbscript/quickref/randomize.html
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