как использовать точное отношение сводной таблицы

у меня есть четыре таблицы в базе данных (sql):

Таблица клиентов:

id
name

Таблица кредитов:

id
name
count

Таблица customer_credit (сводная таблица):

customer_id
credit_id
expiry_date

Таблица потребителей:

id
customer_id

это приложение SPA (веб-база) с Laravel.
как получать (только входящие в систему клиенты) записи из таблицы потребителей, кто определяет в таблице customer_credit доступные записи без даты истечения срока, чтобы мы могли вычислить оставшиеся кредиты. Более подробно, мы пытаемся собрать записи о входе и выходе из гостей в нашем бассейне и тренажерном зале, и мы хотим, чтобы в таблице кредитов учитывался точный идентификатор таблицы customer_credit.

0

Решение

Первый вариант, чтобы использовать Laravel Query Builder:

DB::table('consumers')
->select('consumers.*')
->join('customers', 'consumers.customer_id', '=', 'customers.id')
->join('customer_credit', 'customers.id', '=', 'customer_credit.customer_id')
->join('credits', 'customer_credit.credit_id', '=', 'credits.id')
->where('credits.count', '>', 0)
->where('customer_credit.expiry_date', '>=', date('Y-m-d'))
->get();

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

Также прочитайте эту тему, чтобы увидеть различия: Laravel Eloquent против построителя запросов — зачем использовать eloquent для снижения производительности

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector