Возврат имени из столбца с использованием функции MAX () для другого столбца - PullRequest
0 голосов
/ 09 апреля 2020

У меня был быстрый вопрос о том, как вернуть определенное значение из столбца после использования функции MAX () в другом столбце. Например, я пытаюсь вернуть полное имя комика в зависимости от того, у кого наибольшее количество видео, размещенных на YouTube. Я могу получить количество опубликованных видео, но у меня возникают проблемы с возвращением названия. «count c» - это столбец, который отслеживает, сколько видео на YouTube опубликовал комик. Я использую PHPMyAdmin.

<?php

    session_start();
    $con = mysqli_connect('localhost','root','') or die("Could not connect");
    mysqli_select_db($con, 'youtube') or die(mysqli_error($con));
    $output = '';

    $query = " SELECT fullname FROM comedian WHERE MAX(countc) AS vidcount ";
    $query_result = mysqli_query($con, $query);

    if($query_result)
    {
        while($row = mysqli_fetch_assoc($query_result))
        {
            $output = "The comedian with the most videos is"." ".$row['vidcount'];
        }
        echo $output;
    }
    else{
        $output = "Could not find top comedian.";
        echo $output;
    }



Ответы [ 2 ]

1 голос
/ 09 апреля 2020

Вы можете использовать подзапрос следующим образом:

SELECT fullname FROM comedian WHERE countc = (SELECT MAX(countc) FROM comedian);
1 голос
/ 09 апреля 2020

Когда я вас правильно понимаю, вы хотите, чтобы ваши комики были отсортированы по наибольшему количеству опубликованных видео на YouTube.

Попробуйте следующее ...

SELECT fullname, countc FROM comedian ORDER BY countc DESC

Если вы хотите ограничить результат к числу наборов результатов, которые вы хотите получить, просто добавьте LIMIT к вашему запросу.

SELECT fullname, countc FROM comedian ORDER BY countc DESC LIMIT 1

Приведенный выше пример ограничивает результат одним набором результатов.

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