我的MySQL查询有问题:我有超过100000条记录, 我想要的是随机选择10个条目,我可以看到所有设备至少一次, 设备名称是用户与其他设备的不同之处。 该表有许多设备名称,名称在另一个表中,我使用设备ID连接到该表 每个用户只有不到10个设备,所以基本上我可以在LIMIT 10中看到所有这些设备,但随机功能有时候不会选择其中一些设备 我用:
SELECT DISTINCT name,signal
FROM my_table
Where name='any_name'
ORDER BY RAND()LIMIt 10
这会选择10个条目,但有时不会选择某些设备 示例:
+------------+------------+
| Device | Signal |
+------------+------------+
| Router1 | -60 |
| Router2 | -56 |
| Router3 | -102 |
| Router4 | -125 |
| ....... | .... |
+------------+------------+
答案 0 :(得分:0)
尝试使用此代码:
@media (min-width: 768px) {
.lg-group {
margin-top: 25px;
}
}
但请确保您已将column_name和table_name设置为预期的。
另外,请尝试在旁边使用此链接: PHP's XMLWriter extension
祝你好运。答案 1 :(得分:0)
你可以尝试这个(未经测试)。逻辑是选择那些设备记录,其信号是该设备的最大信号。
SELECT aa.name, aa.signal
FROM (
SELECT name, MAX(signal) AS max_signal
FROM my_table
GROUP BY name
) AS _aa
INNER JOIN my_table AS aa
ON aa.name = _aa.name
WHERE aa.signal = _aa.max_signal
ORDER BY RAND()
LIMIT 10;
答案 2 :(得分:0)
使用SELECT上的子查询做出令人讨厌的方式: -
SELECT b.Device, (SELECT Signal FROM my_table a WHERE a.Device = b.Device ORDER BY RAND() LIMIT 1)
FROM
(
SELECT DISTINCT Device
FROM my_table
ORDER BY RAND()
LIMIT 10
) b