php SQL 查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php SQL 查询相关的知识,希望对你有一定的参考价值。

$sql2 = "SELECT `article_id`,`title`,`file_url`,`description` FROM " . $GLOBALS['ecs'] -> table('article') . " WHERE `article_id` IN ($articles) ORDER BY `add_time` DESC "; 这句中的article_id 想要随机取数据怎么写,万分感谢!

数据表如图 根据article_id 随机取出一条数据,不能为零,随机取出任意一条
原本那个代码,是显示ID最大的一条。就是值50的那个。

一般使用ORDER BY RAND()来实现随机排序,例如你的语句可以这样写:
$sql2 = "SELECT `article_id`,`title`,`file_url`,`description` FROM " . $GLOBALS[\'ecs\'] -> table(\'article\') . " WHERE `article_id` IN ($articles) ORDER BY RAND() DESC LIMIT 1";
参考技术A select *
from
(select article_id, title,file_url,description from 表名 where article_id <> 0 order by dbms_random.value)
where rownum = 1;
参考技术B 为什么不使用PHP直接随机产生一个article_id传进来?这样代码质量会更好。
php可以使用rand()或mt_rand()函数。mt_rand()范围更大。参数为两位。是一个范围。
如:rand(1,100)。就是取1到100之间的随机数。
参考技术C 如果是mysql的话,排序的时候改成随机数排序就行了
ORDER BY rand() LIMIT 1

php 获取SQL查询

$users = User::find()->all();
$query = User::find();
print_r($query->createCommand()->getRawSql());
$users = $query->all();

以上是关于php SQL 查询的主要内容,如果未能解决你的问题,请参考以下文章

php sql查询不适用于php

为啥我在 PHP 中的 SQL 查询失败?

PHP如何将SQL查询结果转为多维数组,并按查询行输出

PHP/SQL - PHP 不会输出 sql 查询

在 SQL 中有效但在 PHP 中无效的查询

PHP 中的 SQL 查询(WordPress)