如何在 CodeIgniter 3 中转换此查询

How to convert this query in CodeIgniter 3

我从http://sqlfiddle.com/#!9/a9ec7e/4/0

那里得到了这段片段

它所做的是从table获取所有数据,所有重复的行将被计​​为1,最后只获取ID/Item.

的最新数据
SELECT
        p.*
    FROM
        (
          -- For every product_id, find maximum created_at time
          SELECT
              product_id, max(created_at) AS created_at
          FROM 
              purchases
          GROUP BY
              product_id
         ) AS mx 
         -- JOIN to the whole table
         JOIN purchases p ON
              mx.product_id = p.product_id AND mx.created_at = p.created_at
    ORDER BY
         product_id ;

这是上面代码片段的结果图片。 结果图片(image):

真正的问题是,如何让它与 CodeIgniter3 查询一起使用? 或者我如何在 CodeIgniter3 中执行此查询。

我尝试使用 $this->db->query(); 但没有成功。 这是我使用上面的代码片段拍摄的图像,并更改了 table 名称、列。我的拍摄结果(图片):

试试这个:

$query = $this->db->query("SELECT p.* FROM (SELECT product_id, max(created_at) AS created_at FROM purchases GROUP BYproduct_id) AS mx 
     JOIN purchases p ON mx.product_id = p.product_id AND mx.created_at = p.created_at ORDER BY product_id");

return $query->result();

希望对您有所帮助