Как получить максимальное значение нескольких столбцов в одной строке? - PullRequest
0 голосов
/ 02 ноября 2019

пытается получить максимальное значение столбца месяцев в одной строке

например, я хочу получить максимальное значение из jan ~ dec из первого столбца, который в настоящее время равен 5, является максимальным значением

желательно сделать это в laravel

enter image description here

1 Ответ

1 голос
/ 02 ноября 2019

См. Функцию PHP max

Чтобы получить названия (и) месяца (помните, что более одного месяца может иметь максимальное значение), вам необходимо реализовать цикл.

$max_day = max(
    $record->jan,
    $record->feb,
    $record->mar,
    $record->apr,
    $record->may,
    $record->jun,
    $record->jul,
    $record->aug,
    $record->sep,
    $record->oct,
    $record->nov,
    $record->dec
);

$columns = [
    'jan' => 'January',
    'feb' => 'February',
    'mar' => 'March',
    'apr' => 'April',
    'may' => 'May',
    'jun' => 'June',
    'jul' => 'July',
    'aug' => 'August',
    'sep' => 'September',
    'oct' => 'October',
    'nov' => 'November',
    'dec' => 'December',
];

$max_months = [];

foreach ($columns as $column_name => $month_name) {
    if ($record->{$column_name} === $max_day) {
        $max_months[] = $month_name;
    }
}

// $max_months e.g. ['January', 'February']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...