Просмотр поста

.
Hat-Trick

Мне нужно выбрать матчи с уникальными командами. То есть может случиться так, что обработчик был выключен, а для клуба накопилось уже 2 матча, которые должны были быть сыграны. Одновременно такое быть не должно, значит должен быть выбрано только один матч. Я написал вот такой код с проверкой в цикле, можно ли его перенести в SQL или так проще? может даже быстрее

$matches_query = $db->query("SELECT `id`, `team_1`, `team_2` FROM `fm_matches` WHERE `date_start` <= '" . $time . "' AND `act` < 3");
while ($fetch = $matches_query->fetch(PDO::FETCH_ASSOC))
{
    if (in_array($fetch['team_1'], $teams) === false && in_array($fetch['team_2'], $teams) === false)
    {
        $matches_list[] = $fetch['id'];

        $teams[] = $fetch['team_1'];
        $teams[] = $fetch['team_2'];
    }
}

То есть одной и той же команды не может быть и в team_1 и в team_2. Так-то вариант рабочий, но может можно лучше.