我正在执行一个查询,我想从drupal数据库中随机化查询结果。
这就是我所做的......
$res=db_query("SELECT DISTINCT nid FROM content_type_event ORDER BY RANDOM()");
但此查询不起作用。这个查询有什么问题?请帮帮我解决这个问题?
非常感谢...
答案 0 :(得分:2)
您可能需要改为使用ORDER BY RAND()
。
如果您获得了大量随机化的结果,您可能还想知道ORDER BY RAND()
的表现:
http://www.titov.net/2005/09/21/do-not-use-order-by-rand-or-how-to-get-random-rows-from-table/
编辑:刚刚看到你评论你正在使用PostgreSQL,看起来它可能会有所帮助:http://www.petefreitag.com/item/466.cfm抱歉,我不能提供很多帮助,我自己不使用PostgreSQL
答案 1 :(得分:1)
您没有告诉我们您使用的是哪个数据库引擎,但ORDER BY RAND()
可能会更好。
更新:好吧,PostgreSQL使用的是RANDOM()
而不是RAND()
,所以没关系。我发现this question似乎表明ORDER BY RANDOM()
应该有效,错误可能在其他地方。也许它是DISTINCT
搞砸了事情;不用DISTINCT
再次尝试查询。