Paginate表与内部连接

时间:2012-11-28 16:59:42

标签: php mysql pdo

我需要一些帮助,我有以下问题:

SELECT
    l.*,
    d.*,
    i.*,
    DATE_FORMAT(l.date_created, '%d/%m/%Y') as date,
    UNIX_TIMESTAMP(l.date_created) as ts,
    DATE_FORMAT(d.date_deposit_made, '%d/%m/%Y') as date_deposit_made,
    l.commission_introducer
FROM
    tbl_client_commissions_log l
INNER JOIN
    tbl_client_deposits d
INNER JOIN
    tbl_initial_commissions i
ON
    l.fk_deposit_id = d.pk_deposit_id AND i.fk_client_id = d.fk_client_id

WHERE
    d.date_deposit_made BETWEEN ? AND ? AND l.system_fee = '0'

AND
    l.fk_introducer_id = ?

ORDER BY ? LIMIT ? OFFSET ?

问题是当我将限制为10且偏移量为0时启动它。它只返回一行。

如何在2个表之间对内部联接进行分页?

感谢。

1 个答案:

答案 0 :(得分:2)

我认为你可以简单地尝试LIMIT

  LIMIT ?, ?

其中第一个参数将设置为0,第二个参数将设置为10,您应该得到结果。

来自MySQL手册:

  

使用两个参数,第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。初始行的偏移量为0(不是1):

     

SELECT * FROM tbl LIMIT 5,10; #检索行6-15