【问题标题】:How to retrieve previous record from database如何从数据库中检索以前的记录
【发布时间】:2014-09-24 03:29:37
【问题描述】:

我正在 WordPress 数据库中编写自定义查询以从帖子表中获取上一条记录。

示例: 我的 ID34975;查询数据库后,我应该得到 ID34972,这是以前的记录 ID。

SQL

$results = $wpdb->get_results( "SELECT * FROM agencies_posts WHERE ID = '34975 ' LIMIT 1", OBJECT );
foreach( $results as $item ){
    $previous_depature_port = $item->ID;
}

【问题讨论】:

    标签: php mysql sql wordpress


    【解决方案1】:

    如果我正确理解您的问题,您需要添加ORDER BY 并使用< 而不是=

    SELECT * 
    FROM agencies_posts 
    WHERE ID < 34975 
    ORDER BY ID DESC 
    LIMIT 1
    

    【讨论】:

      【解决方案2】:

      很确定你想要:

      select *
        from agencies_posts
       where id = (select max(id) from agencies_posts where id < '34975')
      

      如果“当前”id 是已知的,而您只想要之前的。

      【讨论】:

      • 这不会选择所有字段,而只是找到正确的 id。
      • @sgeddes 没有意识到这是他想要的,已修复
      【解决方案3】:

      选择所有 id 小于您感兴趣的 id 的东西,只抓取第一个

      SELECT * 
      FROM agencies_posts
      WHERE ID < '34975 ' 
      ORDER BY ID DESC LIMIT 1"
      

      【讨论】:

        猜你喜欢
        • 2011-08-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多