代码之家  ›  专栏  ›  技术社区  ›  Gowtham Sooryaraj

类似Mysql的偏移量限制查询不起作用

  •  0
  • Gowtham Sooryaraj  · 技术社区  · 5 年前

    当我尝试此查询时,没有得到结果:

    SELECT * FROM m_blog 
    WHERE isdeleted='0' and title LIKE '%t%' 
    ORDER by createdAt DESC 
    LIMIT 10 OFFSET 10
    

    但是当我使用这个查询时,我得到了正确的结果:

    SELECT * FROM m_blog 
    WHERE isdeleted='0' and title LIKE '%t%' 
    ORDER by createdAt DESC 
    LIMIT 10
    

    我想原因是 LIKE 条件 OFFSET 不工作但为什么?我如何使用这个查询?

    2 回复  |  直到 5 年前
        1
  •  1
  •   Gordon Linoff    5 年前

    这回答了问题的原始版本。

    没有满足以下条件的行:

    isdeleted = '0' and title LIKE '%t%'
    

    您确实有符合以下条件的行:

    content LIKE '%a%'
    

    注意 isdeleted 不适用于此条件。

    like and 限制`。

        2
  •  0
  •   Gowtham Sooryaraj    5 年前

    这个 OFFSET N 选项会将起始指针移到第n个位置,并从第n个位置开始返回由 ORDER BY

    第一个查询没有检索行,因为要检索的行数不超过10行(最大值)。所以,当你告诉引擎“把第11行带到前面”时,只有5行,它什么也不返回。

    移除 OFFSET 查看数据,或在将数据检索到临时表中后有条件地应用它。