Php 雄辩地获取特定表列的更高值
在拉拉维尔使用雄辩的语言 要获取列的最小值,此代码起作用:Php 雄辩地获取特定表列的更高值,php,laravel,eloquent,Php,Laravel,Eloquent,在拉拉维尔使用雄辩的语言 要获取列的最小值,此代码起作用: public function getLowestYearBook() { return CV_Outputs::min('book_publication_year'); } 但是为了得到更高的值,它不起作用,我使用了“max”而不是“min” 如何得到更高的价格?谢谢 --------编辑: 问题是有些行中没有定义文本,所以按desc排序返回该行,因为字母大于数字 我通过这样做修复了它: public function g
public function getLowestYearBook()
{
return CV_Outputs::min('book_publication_year');
}
但是为了得到更高的值,它不起作用,我使用了“max”而不是“min”
如何得到更高的价格?谢谢
--------编辑:
问题是有些行中没有定义文本,所以按desc排序返回该行,因为字母大于数字
我通过这样做修复了它:
public function getHighestYearBook()
{
return CV_Outputs::all()
->where('book_publication_year', '<>', "Not defined")
->sortByDesc('book_publication_year')
->first()->book_publication_year;
}
您应该检查所有行中的类型/值是否相同,因为max应该执行此任务。但是试着按降序排序,这意味着首先是最高的,然后得到第一个元素,如下所示:
CV_Outputs::all()
->where('book_publication_year', '!=', 'Not defined')
->sortByDesc('book_publication_year')
->first();
在该列中,我有一些未定义文本的行,所以字母按降序排在数字的前面,然后排除它们。看看我的编辑。啊,我刚注意到你已经修好了。您可以接受我的答案,就像您使用的答案一样:在我回答以下问题之前,我不知道未定义的数据: