獲取第一個和最後一個記錄

Rails 有很簡單的方法從資料庫中獲取 firstlast 記錄。

要從 users 表中獲取 first 記錄,我們需要輸入以下命令:

User.first

它將生成以下 sql 查詢:

SELECT  `users`.* FROM `users`  ORDER BY `users`.`id` ASC LIMIT 1

並將返回以下記錄:

#<User:0x007f8a6db09920 id: 1, first_name: foo, created_at: Thu, 16 Jun 2016 21:43:03 UTC +00:00, updated_at: Thu, 16 Jun 2016 21:43:03 UTC +00:00 >

要從 users 表中獲取 last 記錄,我們需要輸入以下命令:

User.last

它將生成以下 sql 查詢:

SELECT  `users`.* FROM `users`  ORDER BY `users`.`id` DESC LIMIT 1

並將返回以下記錄:

#<User:0x007f8a6db09920 id: 10, first_name: bar, created_at: Thu, 16 Jun 2016 21:43:03 UTC +00:00, updated_at: Thu, 16 Jun 2016 21:43:03 UTC +00:00 >

將整數傳遞給 firstlast 方法會建立 LIMIT 查詢並返回物件陣列。

User.first(5)

它將生成以下 sql 查詢。

SELECT  "users".* FROM "users"  ORDER BY "users"."id" ASC LIMIT 5

User.last(5)

它將生成以下 sql 查詢。

SELECT  "users".* FROM "users"  ORDER BY "users"."id" DESC LIMIT 5