为此,您可以将ORDER BY RAND()与LIMIT一起使用。让我们首先创建一个-
create table DemoTable1426 -> ( -> FirstName varchar(20) -> );
使用insert在表中插入一些记录-
insert into DemoTable1426 values('John');
insert into DemoTable1426 values('Adam');
insert into DemoTable1426 values('Robert');
insert into DemoTable1426 values('David');
insert into DemoTable1426 values('Sam');使用选择显示表中的所有记录-
select * from DemoTable1426;
这将产生以下输出-
+-----------+ | FirstName | +-----------+ | John | | Adam | | Robert | | David | | Sam | +-----------+ 5 rows in set (0.00 sec)
以下是查询记录的命令,但要确定一个特定的名称并显示其余的值(仅某些)(随机)-
select * from DemoTable1426 order by (FirstName='Robert') desc,RAND() -> limit 3;
这将产生以下输出-
+-----------+ | FirstName | +-----------+ | Robert | | Adam | | David | +-----------+ 3 rows in set (0.52 sec)