即使在MYSQL中的“限制”,也显示所有唯一ID

时间:2009-10-22 11:54:29

标签: mysql database

我猜这是奇怪的情况。

我有一个包含100k记录的结果表,基本上这个表包含具有特定ID(不是PK)的事务。

我正在显示将记录限制为3000的结果。我使用Javascript工具框在表标题的顶部显示过滤器,以便用户可以选择/过滤他们想要的结果。但由于我将行限制为3000,因此并非所有ID都在过滤器组合框中捕获。

现在,我的问题是,无论如何要显示该ID列的所有IDS,但仍限制结果?要么通过SQL查询还是其他任何可行的方法?

如果有人对其他可能的方法有任何建议,我将不胜感激。

2 个答案:

答案 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到您想要的任何结构。