2009-10-22 45 views
0

我想这是奇怪的情况。即使在'限制'中显示所有的唯一ID在MYSQL

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

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

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

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

回答

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); 
?> 

我不能保证上述示例的正确性,但它应该指向正确的方向。

+0

好的,我想在PHP中做到这一点。是否有可能在单个PHP页面中执行两个不同的查询,并以某种方式在单个页面中显示结果? – JPro 2009-10-22 12:05:49

+0

PHP已添加样例。 – pyrocumulus 2009-10-22 12:11:49

+0

非常感谢。 – JPro 2009-10-22 12:12:11

0

对主键做一个单独的提取,你需要所有这些,所以你只需要获取它们。然后获取前3000条记录所需的全部数据。您可以遍历第一个查询的结果,将所需的所有ID都转换为您想要的任何结构。

相关问题