Randomizing a Set of Rows : RAND « Function « SQL / MySQL

Home
SQL / MySQL
1.Aggregate Functions
2.Backup Load
3.Command MySQL
4.Cursor
5.Data Type
6.Database
7.Date Time
8.Engine
9.Event
10.Flow Control
11.FullText Search
12.Function
13.Geometric
14.I18N
15.Insert Delete Update
16.Join
17.Key
18.Math
19.Procedure Function
20.Regular Expression
21.Select Clause
22.String
23.Table Index
24.Transaction
25.Trigger
26.User Permission
27.View
28.Where Clause
29.XML
PostgreSQL
MySQL Tutorial
SQL / MySQL » Function » RAND 
Randomizing a Set of Rows
     
mysql> CREATE TABLE testscore
    -> (
    ->  subject INT UNSIGNED NOT NULL AUTO_INCREMENT,
    ->  age             INT UNSIGNED NOT NULL,
    ->  sex             ENUM('M','F'NOT NULL,
    ->  score   INT,
    ->  PRIMARY KEY (subject)
    -> );
Query OK, rows affected (0.01 sec)

mysql>
mysql> INSERT INTO testscore (age,sex,score)
    ->  VALUES
    ->  (5,'M',5),
    ->  (5,'M',4),
    ->  (5,'F',6),
    ->  (5,'F',7),
    ->  (6,'M',8),
    ->  (6,'M',9),
    ->  (6,'F',4),
    ->  (6,'F',6),
    ->  (7,'M',8),
    ->  (7,'M',6),
    ->  (7,'F',9),
    ->  (7,'F',7),
    ->  (8,'M',9),
    ->  (8,'M',6),
    ->  (8,'F',7),
    ->  (8,'F',10),
    ->  (9,'M',9),
    ->  (9,'M',7),
    ->  (9,'F',10),
    ->  (9,'F',9)
    -> ;
Query OK, 20 rows affected (0.00 sec)
Records: 20  Duplicates: 0  Warnings: 0

mysql>
mysql> SELECT subject, age, sex, score FROM testscore ORDER BY subject;
+---------+-----+-----+-------+
| subject | age | sex | score |
+---------+-----+-----+-------+
|       |   | M   |     |
|       |   | M   |     |
|       |   | F   |     |
|       |   | F   |     |
|       |   | M   |     |
|       |   | M   |     |
|       |   | F   |     |
|       |   | F   |     |
|       |   | M   |     |
|      10 |   | M   |     |
|      11 |   | F   |     |
|      12 |   | F   |     |
|      13 |   | M   |     |
|      14 |   | M   |     |
|      15 |   | F   |     |
|      16 |   | F   |    10 |
|      17 |   | M   |     |
|      18 |   | M   |     |
|      19 |   | F   |    10 |
|      20 |   | F   |     |
+---------+-----+-----+-------+
20 rows in set (0.00 sec)

mysql>
mysql> SELECT score FROM testscore ORDER BY RAND( );
+-------+
| score |
+-------+
|     |
|     |
|     |
|     |
|    10 |
|     |
|     |
|     |
|     |
|     |
|    10 |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
+-------+
20 rows in set (0.00 sec)

mysql> SELECT score FROM testscore ORDER BY RAND( );
+-------+
| score |
+-------+
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|    10 |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|     |
|    10 |
+-------+
20 rows in set (0.00 sec)

mysql>
mysql> drop table testscore;
Query OK, rows affected (0.00 sec)

   
    
    
    
    
  
Related examples in the same category
1.Each time you seed the generator with a given value, RAND( ) will produce a repeatable series of numbers:
2.Selection with a random Column
3.To select a single winner at random from the combined results of the three tables
4.Generating Random Numbers
5.Seed RAND( ) randomly
6.Add a column of random numbers to the column output list, alias it, and refer to the alias for sorting
7.Selecting Random Items from a Set of Rows
8.To draw five winning entries at random from a table named drawing that contains contest entries, use RAND( ) i
9.get some random numbers
10.Get some random numbers in the range 1-100
11.Get the name and the number of each player whose name consists of the pattern m.n. The point can be any random
java2s.com  |  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.