MySQL - 选择某个序列中的行

时间:2015-07-06 10:51:18

标签: php mysql sql

我正在尝试构建像LinkedIn这样的人员目录:

http://www.linkedin.com/directory/people-a

我不想从name开始使用a字段获取所有行,并构建像LinkedIn这样的链接列表。在MySQL中是否有任何方法,所以我只能按以下顺序获取行:

第1,第100,第101,第200,第201,第300,第301,第400,第401,最后

这意味着我试图在某个gap之后连续两行,包括第一个和最后一个项目。 id不是均匀增加的顺序,所以我不能使用这个answser。任何帮助或提示都表示赞赏。

说我的查询SELECT * FROM商家where name like 'a%' order by name会返回如下ID:

1,3,5,6,8,9,12,33,45,66,77,88,100,103,120,133,155,166,177,178,198

以上是我想获得所有行。但我想要的是只获得一定距离后的物品。例如,如果我想在每5个项目之后选择:

1,9,12,88,100,166,177,198

所以跳过4个项目并接下来的两个。甚至可以在mysql中使用吗?

2 个答案:

答案 0 :(得分:0)

您可以使用限制条款

选择范围
SELECT ...... LIMIT 0,99

这将给出前100条记录

SELECT ...... LIMIT 100,199

会给下一个&等等

答案 1 :(得分:0)

你可以按照自己的意愿订购 创建一个获取数字并返回0,1的函数(例如,你指定的所有数字都是0),然后你需要将行的等级传递给你的函数。

示例

<script src="http://lab.cubiq.org/iscroll5/build/iscroll.js"></script>
    <div id="wrapper">
        <div class="scrollable">
            <table></table>
        </div>
        <div>Srcoll bar should be above this div...</div>
    </div>

myfunc是你写的函数

如果您只想获取这些行,而不是先按它排序并先获取它们,您可以执行以下操作:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
$(this).ready(function()
  {
  
     var slider;
  
	slider=$('.bxslider').bxSlider({
    auto: true,
    mode: 'fade',
      
      onSlideAfter: function($slideElement, oldIndex, newIndex){
         //Chaange Tabs here
      }
  });
  
  
  
  
     $(".sub_nav li a").click(function(e) {
		e.preventDefault();
		var index = $(this).attr('index');
		slider.goToSlide(parseInt(index));
		$(".sub_nav li a").removeClass('onstate');
		$(this).addClass('onstate');
	});
  
  
  
  })