MYSQL查询需要改进

时间:2014-02-05 20:17:40

标签: mysql wordpress

我在下面有一个查询,它会生成一个简单的植物列表(名为“惊悚片”的字段)

问题:

下面的查询仅考虑表中匹配项的仅第一个顺序集,然后以随机顺序显示它们。查询未考虑稍后在表中找到的其他匹配项。

需要解决方案:

我希望查询从表中的所有项目中选择随机结果,而不仅仅是第一组匹配结果。

$row_object = $wpdb->get_results( $wpdb->prepare( 
    "SELECT * FROM {$wpdb->prefix}personal_creations_assistant
     WHERE pot_sun_exposure = %s
     AND pot_height = %s
     AND pot_size = %s
     AND pot_shape = %s
     AND pot_placement = %s
     GROUP BY thriller 
     ORDER BY RAND() LIMIT 0,3
   ",
    $sun_exposure,
    $height,
    $size,
    $shape,
    $placement
   ) 
 );

1 个答案:

答案 0 :(得分:0)

如果我做对了,你想从数据库中获取一些随机行。随机3行。 你可以用PHP做到这一点。首先制作一个COUNT来查找总共有多少行。然后说你调用你的变量$ rowstotal;你再制作一个$limit_s = rand(0, $rowstotal);然后将它添加到你的查询中:

... LIMIT $limit_s, 3