簡體   English   中英

使用SQL Server Limit和Offet的php分頁

[英]php pagination using sql server Limit and Offet

我對php分頁有問題。 我試圖從數據庫列表並生成頁面。 下面有一部分代碼。 如果我是對的,我無法在SQL Server中使用限制和偏移量?

$stmt = $conn->prepare('SELECT * FROM db_name ORDER BY use_by_date LIMIT :limit OFFSET :offset');

$stmt->bindParam(':limit', $limit, PDO::PARAM_INT);
$stmt->bindParam(':offset', $offset, PDO::PARAM_INT);
$stmt->execute();


    if ($stmt->rowCount() > 0) {

        $stmt->setFetchMode(PDO::FETCH_ASSOC);
        $iterator = new IteratorIterator($stmt);
        foreach ($iterator as $row) {
            echo '<p>', $row['name'], '</p>';
        }

    }

 else {
        echo '<p>No results could be displayed.</p>';
    }

怎么了?

似乎您忘記了實際獲取數據:

$rows = $stmt->fetchAll();
foreach ($rows as $row) { ... }

http://php.net/manual/en/pdostatement.fetchall.php

此外,根據sevnlabs的回答,T-SQL中沒有限制。

SQL Server中沒有限制。 您可以使用SELECT TOP XY來限制結果。 可以通過最后接收的主鍵來實現偏移。 下一頁的內容類似“ WHERE id> lastReturnedId”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM