Извлечение записей, в которых соблюдаются условия [Eloquent Laravel] - PullRequest
0 голосов
/ 09 октября 2018

У меня есть эти 2 таблицы:

+=============+   +==================+
| space_table |   |   price_table    |
+=============+   +==================+
|  space_id   |   |    price_id      |
+-------------+   +------------------+
| some_column |   |    space_id      |
+-------------+   +------------------+
                  |    condition1    |
                  +------------------+
                  |    condition2    |
                  +------------------+

Теперь я пытаюсь объединить эти два из space_table и получить запись, где condition1 и condition2 в price_table имеют определенное значение.Трудная часть в том, что space может иметь много price, и мне нужно, чтобы ВСЕ цены с определенным пробелом имели это определенное значение.

Я пробую это:

$query->whereNotExists(function ($query) {
    $query->selectRaw('space_table.* from space_table')
            ->join('price_table', 'space_table.space_id', '=', 'price_table.space_id')
            ->where('condition1.company_id', '>', 0)
            ->where('condition2', '>', 0)
            ->groupBy('space_table.space_id');
});

код выше ничего не извлекает.

я также попробую это:

$query->selectRaw('space_table.*')
        ->join('price_table', 'space_table.space_id', '=', 'price_table.space_id')
        ->where('condition1', 0)
        ->where('condition2', 0)
        ->groupBy('space_table.space_id');

Приведенный выше код извлекает некоторые неверные данные, например, когда 1 пробел имеет 2 цены (только 1 квалифицированный), но все равно был получен (что мне нужно, так этокогда цена 2 квалифицируется).

Я работаю над этим в течение 3 дней, и мне действительно нужна помощь и / или предложение.

Спасибо.

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