我猜这是奇怪的情况。
我有一个包含100k记录的结果表,基本上这个表包含具有特定ID(不是PK)的事务。
我正在显示将记录限制为3000的结果。我使用Javascript工具框在表标题的顶部显示过滤器,以便用户可以选择/过滤他们想要的结果。但由于我将行限制为3000,因此并非所有ID都在过滤器组合框中捕获。
现在,我的问题是,无论如何要显示该ID列的所有IDS,但仍限制结果?要么通过SQL查询还是其他任何可行的方法?
如果有人对其他可能的方法有任何建议,我将不胜感激。
答案 0 :(得分:3)
我认为唯一的方法是从实际结果中单独检索IDS(因此在单独的查询中)。这样您就可以限制结果集,同时仍然可以获取所有可能的ID以进行过滤/选择。
<?php
$query1 = "SELECT name, id FROM items LIMIT 3000"; // get your items
$result1 = mysql_query($query1);
$query2 = "SELECT id FROM items"; // get all the IDs
$result2 = mysql_query($query2);
?>
我无法保证上述样本的正确性,但它应该指向正确的方向。
答案 1 :(得分:0)
只为主键单独提取,您需要所有这些提取,因此您只需要获取它们。然后获取前3000条记录所需的所有数据。您可以遍历第一个查询的结果,以获得所需的所有ID到您想要的任何结构。