• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 484
  • Last Modified:

Generating Random Number List

Hi Experts,
I have a one time programing request that I think could be solved with some SQL (also coding in ColdFusion)

Problem:  I need to generate in a random sequence a list if all possible 4 digit numbers only using the set of digits (1,2,3,4,5)

ex: 1234, 4455, 5555, 1111.

I'm not sure how to do this best.  I could
-  Sequentially insert rows with all numbers from 1111 - 5555 (within the set of digits)
-  Assign with it a random number (or use SQL to generate that).

-  Select all rows ordered by random number?

What do you think?

Thanks in advance
hefterr
0
hefterr
Asked:
hefterr
  • 2
2 Solutions
 
Kyle AbrahamsSenior .Net DeveloperCommented:
Looks good.


For the random number piece make sure you use new ID as rand will be the same for all rows.

From here:
http://blog.sqlauthority.com/2007/04/29/sql-server-random-number-generator-script-sql-query/

using method 5 on a per row basis, just adjust the range:

SELECT ABS(CAST(NEWID() AS binary(6)) %50000)  + 1 as randomNumber
FROM sysobjects) sample
GROUP BY randomNumber
ORDER BY randomNumber
0
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
Knocketh yourself out: Click on the below link to go to an article I wrote, and hit Page Down about seven or eight times to get to the part where you can use the RAND() function to make all sorts of randum numbers and characters.
SQL Server:  T-SQL recipe to create a million sample people
0
 
hefterrAuthor Commented:
Thanks,
I ended up with something I hacked out as it was a 1 time deal for 625 numbers

DECLARE @table TABLE ( value char(1) )
INSERT INTO @table ( value ) VALUES (1)
INSERT INTO @table ( value ) VALUES (2)
INSERT INTO @table ( value ) VALUES (3)
INSERT INTO @table ( value ) VALUES (4)
INSERT INTO @table ( value ) VALUES (5)

SELECT   t1.value +''+ t2.value +''+ t3.value + '' + t4.value AS theNumber
FROM      @table t1
                 CROSS JOIN @table t2
                 CROSS JOIN @table t3
                 CROSS JOIN @table t4
order by newid()
0
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
Good deal.  Btw, save you some typing...

INSERT INTO @table ( value ) VALUES (1), (2), (3), (4), (5)
0

Featured Post

[Webinar On Demand] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now