/ Forside/ Teknologi / Udvikling / SQL / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Funktion til random nummer?
Fra : Harlekin
Vist : 785 gange
100 point
Dato : 06-03-01 16:10

Er der en SQL (T-SQL) funktion der kan give mig et random nummer i et givet range (fx. 10-1000000)
Hvis der er, hvad hedder den, hvis ikke hvordan kan jeg så gøre dette i en stored procedure?

 
 
Kommentar
Fra : Harlekin


Dato : 06-03-01 16:27

Hvad så hvis jeg ikke vil have 15 decimaler på mit tal? (det skal være et heltal)

-----------------------------------------------------
23.201904461133935

(1 row(s) affected)

Accepteret svar
Fra : fehaar

Modtaget 110 point
Dato : 06-03-01 16:31

Så laver du din funktion om til flg :

ALTER PROCEDURE Random_Interval(@low int, @high int)
AS BEGIN
SELECT CONVERT(int, ROUND(RAND() * (@high - @low) + @low, 0))
END

Så afrunder og konverterer den.

Kommentar
Fra : Nyhedsbruger


Dato : 06-03-01 16:32


"Harlekin" <Harlekin.news@kandu.dk> wrote in message
news:h47p6.9793$XX2.217863@twister.sunsite.dk...
> Er der en SQL (T-SQL) funktion der kan give mig et random nummer i et
givet range (fx. 10-1000000)
> Hvis der er, hvad hedder den, hvis ikke hvordan kan jeg så gøre dette i en
stored
> procedure?
>
Har du kikket i books online?
Søg efter rand

-- This example uses a variable to produce five different random numbers
generated with the RAND function.
DECLARE @counter smallint
SET @counter = 1
WHILE @counter < 5
BEGIN
SELECT RAND(@counter)
SET NOCOUNT ON
SET @counter = @counter + 1
SET NOCOUNT OFF
END
GO

mvh/Peter Lykkegaard




Godkendelse af svar
Fra : Harlekin


Dato : 06-03-01 16:42

Det virker jo som en drøm!
Takker.

Kommentar
Fra : fehaar


Dato : 06-03-01 16:54

Til Peter,

Problemet med din metode er at det seed som funktionen RAND tager, her din counter, er konstant (her fra 1 til 5 altid), vil svarene være ens altid...

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste