关于sql语句的limit与查询记录的下标

一  .

      之前有使用过limit,limit的作用就是控制显示查询出来的语句从哪一条显示到哪一条。

它后边跟着另个参数,  limit a,b    表示从查询到的记录中,只显示第a行到第b行。

二.

       然后,我们查询到的的记录第一条是从0,开始的,就像数组一样,第一个下标是0.这也是我今天才发现的。改了一段别人写的sql语句发现一直查不出明明存在而且符合条件的数据。

就跟,limit的后边的参数有关。我要查的数据只有一条,但是我的代码如下


SELECT bpjd_jcd.Id,
       bpjd_jcd.Store_Id,
       bpjd_jcd.No ,       
       khgx_car.Kh_Id,
       bpjd_jcd.Jcsj AS Time,
       bpjd_jcd.Car_Id,       
       khgx_car.No AS Plate,       
       khgx_car.Cartype_Id ,
       bpjd_jcd.Sxr AS Contact,
       bpjd_jcd.Wxlx_Id,       
       jczl_wxlx.Name AS Repairtype_Name ,
       bpjd_jcd.Djzt AS State,       
       IFNULL(SUM(bpjd_jcd_fwxm.Money),0) AS LaborCost,       
       IFNULL(SUM(bpjd_jcd_qtxm.Money),0) AS OtherCost,       
       IFNULL(TEMP1.PartsCost,0) AS PartsCost
FROM bpjd_jcd
LEFT JOIN khgx_car ON khgx_car.Id=bpjd_jcd.Car_Id
LEFT JOIN jczl_wxlx ON jczl_wxlx.Id=bpjd_jcd.Wxlx_Id
LEFT JOIN bpjd_jcd_fwxm ON bpjd_jcd_fwxm.Jcd_Id=bpjd_jcd.Id
LEFT JOIN bpjd_jcd_qtxm ON bpjd_jcd_qtxm.Jcd_Id=bpjd_jcd.Id
LEFT JOIN (     
                  SELECT Jcd_Id,SUM(Money) as PartsCost FROM ckgl_wxltl WHERE ckgl_wxltl.State=1 GROUP BY Jcd_Id
) AS TEMP1 ON TEMP1.Jcd_Id=bpjd_jcd.Id
WHERE bpjd_jcd.Djzt in ('结算') AND bpjd_jcd.Store_Id=1 AND bpjd_jcd.Jcsj like '2016-04-01%'
GROUP BY bpjd_jcd.Id ORDER  BY  Time DESC 
LIMIT 1,100;

最后一行,limit  1,100 。所以我的数据一直出不来。把它改成 limit 0,100就出来了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值