我的问题非常简单,如何在同一个SQL语句中选择9条随机记录和1条已定义记录?到目前为止,我所能想到的就是这样,它只返回一个合作伙伴记录(已定义的记录),而不返回其他9个随机记录。
$sql2 = "SELECT * FROM table WHERE filename = '$partn' AND filename != '$x' ORDER BY RAND() LIMIT 10";为了详细说明,我需要返回10条记录,其中没有一条应该是“$x”,其中一条应该是“$partn”,然后是其他9条随机记录,它们都需要以随机顺序显示。
任何帮助都将不胜感激!:)
发布于 2012-05-30 23:45:11
(SELECT * FROM table WHERE file='$x')
UNION ALL
(SELECT * FROM table WHERE file<>'$x' ORDER BY RAND() LIMIT 9)发布于 2012-05-30 23:44:25
使用联合:http://dev.mysql.com/doc/refman/5.0/en/union.html
(select the one you want)
union
(select 9 randoms that arent the one you want)https://stackoverflow.com/questions/10819647
复制相似问题