2015-09-08 3 views
5

привета, как я могу получить максимальное значение баллов, где диапазон столбца ID начинается на 3-5 пример таблицы enter image description hereLaravel PHP запроса, как получить максимальное значение в пределах диапазона

Я хочу, чтобы получить максимальное значение баллы, где столбец ID в диапазоне от 3-5 , пожалуйста, помогите,

то, что я делал до сих пор:

$max_scores_table= DB::table('scores_table') 
->where('id', '>', 2) 
->max('score'); 

другая проблема, когда у меня есть десятичная точка в таблице , когда я использовал макс() функцию он получает ID = 5, который имеет показатель 4,5, вместо ID = 4 со значением 4,6, TNX заранее

ответ

5

Попробуйте использовать whereBetween надеюсь, что это работает:

$max_scores_table= DB::table('scores_table') 
    ->select(DB::raw('MAX(score) FROM scores_table as MaxScore')) 
    ->whereBetween('id', array(3,5)) 
    ->where('score', 'MaxScore') 
    ->get(); 

ИЛИ:

$max_scores_table= DB::table('scores_table') 
    ->whereBetween('id', array(3,5)) 
    ->max('score') 
    ->get(); 
+0

Тпх это работает, но я забыл упомянуть еще одну проблему, если ее apropriate добавить здесь, как я могу получить максимальное значение, где есть десятичная точка, sory для добавления другого вопроса, я просто отредактирую свой вопрос^_^ – user4006175

1

записи запроса, как показано ниже (проверено):

$max_scores_taable = DB::table('scores_table) 
        ->whereBetween('id',array(3,5)) 
        ->max('score') 

Ссылка: Laravel API

0

Используйте запрос, как этот

$max_scores_table = DB::table('scores_table') 
        ->whereBetween('id', array(3, 5))->max('score')->get(); 

Для справки следуйте Laravel Documentation

+0

-> get() не будет работать –

Смежные вопросы