0

我正在创建一个 PHP 脚本来维护用户信息、注册新用户和登录到安全页面。为此,我有一个 MySQL 表用户,它存储有关用户的所有信息。用户表有不同的字段,如用户 ID、用户名、用户组 ID、电子邮件哈希、国家等。

在我的脚本中,我想从每个 usergroup_id 中获取 10 个用户。
对此的 SQL 查询是什么?

4

3 回答 3

1

我认为以下内容适用于为每个用户组随机获取 10 个用户:

select u.*
from user u
where u.userid in (select userid
                   from user
                   where u.usergroupid = user.usergroupid
                   limit 10
                  )

这是使用相关子查询将每个用户组的行数限制为 10。

于 2012-05-19T11:29:10.543 回答
1

你可以使用LIMIT从句。

例子:

SELECT * FROM `your_table` LIMIT 5, 5 

这将显示记录 6、7、8、9 和 10。

限制用于将您的 MySQL 查询结果限制在指定范围内。您可以使用它来显示前 X 个结果,或显示 X - Y 结果的范围。它被表述为限制 X、Y,并包含在查询的末尾。X 是起点(记住第一条记录是 0),Y 是持续时间(要显示多少条记录)。

于 2012-05-19T10:14:59.180 回答
0

请试试这个,

SELECT c.* FROM customers c where c.id in (select c2.id from customers c2 where c.group_id=c2.group_id limit 0, 10)
于 2012-05-19T15:56:48.810 回答