Я хочу проверить, что моя команда sql содержит введенные данные или нет

У меня была та же проблема, и это происходит, когда я создаю новый проект.

То, что я делаю, это:

  • проверить обновления SDK
  • , затем обновить студийную версию Android,
  • , а затем повторно открыть проект
  • откройте файл andoridmanifest.xml
  • , удалив пробел между «_>» в android: label и save.

Это работает для меня.

1
задан Tim Lewis 27 March 2019 в 15:08
поделиться

1 ответ

Прежде всего, $ko не содержит результатов запроса, пока вы не передадите ему закрытие, в данном случае ->first().

$ko =  DB::select('SELECT * FROM points WHERE round="first" ORDER BY points DESC , run_rate DESC LIMIT 4')->first();

Далее вам нужно сравнить значение $ko->team с $matches->team1 или $matches->team2:

if($ko->team == $matches->team1 || $ko->team == $matches->team2) {
  ...
}

Наконец, некоторые очистить. Запрос БД может быть упрощен для использования синтаксиса Eloquent вместо необработанного SELECT:

$ko = DB::table("points")
->where("round", "=", "first")
->orderBy("points", "DESC")
->orderBy("run_rate", "DESC")
// ->limit(4) // Removing this; incompatible with `->first()`
->first();

Есть еще одна логическая ошибка; если вам нужно limit(4), то вы не можете использовать ->first(), вам придется использовать ->get(), который затем создает Collection, который нельзя сравнить с $matches, если вы не выполните цикл:

$kos = DB::table("points")...->get();

$matches->round = "first";
foreach($kos AS $ko){
    if($ko->team == $matches->team1 || $ko->team == $matches->team2) {
        $matches->round = "ko";
        break;
    }
}

В общем, вам необходимо пересмотреть то, что вы пытаетесь сделать, и прочитать синтаксис Eloquent, как выполнять запросы и возвращать результаты, как выполнять циклы, получать доступ к свойствам и сравнивать эти результаты. и т. д.

Редактировать: Так как вы выполняете цикл и сравнение, установите значение по умолчанию $matches->round на «first», затем, при циклировании, если условие сравнения - true, переопределите $matches->round на «ko» и прервите из цикла.

0
ответ дан Tim Lewis 27 March 2019 в 15:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: