關於sql語句中limit的坑

2021-10-11 02:40:16 字數 442 閱讀 2178

在使用分頁查詢時遇到了這樣這個思維錯誤,**如下

string sql =

"select * from topic where c_id=? and `delete`=0 order by update_time desc limit ?,?"

;

這裡同時有條件和限制,我本以為先條件查詢,也就是先執行了 where c_id=? anddelete=0 order by update_time,然後再執行limit,執行了幾次後發現和我預想的結果不對勁,一開始還以為是引數錯誤(這裡吐槽一下mysql特殊字段區分符號 ,我一直以為是 』 )。除錯幾次後發現邏輯應該是先執行limit,再執行 where c_id=? anddelete=0 order by update_time,也就是先排序查詢其中幾列,再條件篩選。

sql語句中的limit用法

limit 用於限制查詢結果返回.用法 limit a,b 其中a表示查詢資料的起始位置,b表示返回的數量。mysql資料庫中的記錄是從0開始的 舉例 select from table limit 0,3 其中table為要查詢的表 該查詢語句表示查詢資料庫中從第一條記錄開始且包含第一條記錄的前三...

SQL語句中的limit的用法

在我們使用查詢語句的時候,經常要返回前幾條或者中間某幾行資料,這個時候怎麼辦呢?不用擔心,mysql已經為我們提供了這樣乙個功能 select from tablename limit offset,rows rows offset offset select from tablename.limi...

SQL語句中中LIMIT的用法

假設有這麼一張表名叫ids,只有id一列 id 123 45.197198 199200 執行 select from ids limit 10,1輸出 id 11執行 select from ids limit 10,3輸出 id 11 1213執行 select from ids limit 4...