MySQLi 圆兰特 ()
MySQLi Round Rand()
我正在学习 PHP 和 MySQLi。在简单的网站上工作,我在 mysqli 中遇到 Rand() 问题。
SELECT * FROM posts LEFT JOIN users ON users.user_id=posts.uid WHERE posts.uid=users.user_id and posts.active=1 and catid=6 AND feat=1 AND pid >= Round( Rand() * ( SELECT Max( pid ) FROM posts )) limit 1
这就是我从数据库中选择 posts 并在网站上随机显示它们的方式,但问题是当我们说 2 posts 随机显示第 3 个(刷新)在我的例子中,会说行中没有 post 并且什么也不显示。
if($CountRows==0){ ?> <div class="col-note">No more posts.</div>
<?php } ?>
我再次刷新网站后,它会随机显示 post 之一,一切正常。
我的问题是,如何在不显示注释的情况下随机显示新闻"No more posts"。所以如果有 2 个 posts,它应该总是从第 1 个随机切换到第 2 个。
为什么不使用 ORDER BY RAND()
?它随机排序查询结果
也使用普通联接而不是左联接并删除“posts.uid=users.user_id
”。
我正在学习 PHP 和 MySQLi。在简单的网站上工作,我在 mysqli 中遇到 Rand() 问题。
SELECT * FROM posts LEFT JOIN users ON users.user_id=posts.uid WHERE posts.uid=users.user_id and posts.active=1 and catid=6 AND feat=1 AND pid >= Round( Rand() * ( SELECT Max( pid ) FROM posts )) limit 1
这就是我从数据库中选择 posts 并在网站上随机显示它们的方式,但问题是当我们说 2 posts 随机显示第 3 个(刷新)在我的例子中,会说行中没有 post 并且什么也不显示。
if($CountRows==0){ ?> <div class="col-note">No more posts.</div>
<?php } ?>
我再次刷新网站后,它会随机显示 post 之一,一切正常。
我的问题是,如何在不显示注释的情况下随机显示新闻"No more posts"。所以如果有 2 个 posts,它应该总是从第 1 个随机切换到第 2 个。
为什么不使用 ORDER BY RAND()
?它随机排序查询结果
也使用普通联接而不是左联接并删除“posts.uid=users.user_id
”。