pluck()取表中一列中所有值组成数组

来源:互联网 发布:网络直播是如何赚钱的 编辑:程序博客网 时间:2024/06/04 18:58
######################!!!非常重要!!!!########################

###########pluck是取一个字段也就是一列的所有元素的值存入一个数组中, 也可以取多个字段合


Person.pluck(:id)
# SELECT people.id FROM people
# => [1, 2, 3]


Person.pluck(:id, :name)
# SELECT people.id, people.name FROM people
# => [[1, 'David'], [2, 'Jeremy'], [3, 'Jose']]


Person.pluck('DISTINCT role')
# SELECT DISTINCT role FROM people
# => ['admin', 'member', 'guest']


Person.where(age: 21).limit(5).pluck(:id)
# SELECT people.id FROM people WHERE people.age = 21 LIMIT 5
# => [2, 3]


Person.pluck('DATEDIFF(updated_at, created_at)')
# SELECT DATEDIFF(updated_at, created_at) FROM people
# => ['0', '27761', '173']

0 0