我有以下mysql表。
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`reg_number` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=22 ;
在这个表中有一些值如下
INSERT INTO `users` (`name`, `reg_number`) VALUES('qaser', 'j-001'), ('rizwan', 'j-002'), ('rizwan', 'j-003'),('rizwan', 'j-004'),('rizwan', 'j-005'),('rizwan', 'j-006'),('rizwan' 'j-007'),('rizwan', 'j-008');
我正在使用以下查询检索这些值
$sql="SELECT reg_number FROM users";
$result=mysqli_query($con,$sql);
if(!$result){
die(mysqli_error($con));
}
while($row=mysqli_fetch_array($result)){
echo $row['reg_number'];
}
它给出了以下输出
j-001 j-002 j-003 j-004 j-005 j-006 j-007 j-008
在运行这些查询时,它运行得非常好。我要这个结果的随机输出,只有一个值,例如j-005
当rand(1,8)函数工作时,它只给出一个值。
最佳答案
可以使用RAND()操作数来执行此操作
SELECT reg_number FROM users ORDER BY RAND() limit 1