Подсчитать другие данные таблицы и отобразить в первичной таблице в php laravel с помощью подзапроса select - PullRequest
0 голосов
/ 23 февраля 2019

У меня есть две таблицы как категории и продукта.Я должен рассчитывать аналогичные данные из таблицы продукта и отображать количество в категории таблицы.Я использую этот запрос в laravel для отображения деталей категории.

$data = CategoryModel::orderBy('id','ASC')->get();

В основном php я использовал следующий запрос для отображения подсчитанных данных в таблице 1.

SELECT tbl_category.*,(SELECT COUNT(*) FROM tbl_product
WHERE tbl_product.v_category = tbl_category.v_name) AS TOTAL FROM tbl_category

Теперь я хочуреализовать вышеуказанный запрос в laravel.как я могу это сделать?

1 Ответ

0 голосов
/ 23 февраля 2019

Мне нужны дополнительные сведения, но я предполагаю, что продукт сопоставлен с несколькими категориями, поэтому будет файл модели с именем Category, сопоставленный с категориями таблицы, и будет файл модели Product.php, сопоставленный с таблицей продуктов

Ниже приведенный фрагмент в вашем контроле поможет

App\Product::withCount('categories')->get()

Пожалуйста, убедитесь, что ниже в вашем Product.php (файл модели)

public function categories()
{
    return $this->hasMany('\App\Category');
}

Обратите внимание на количество категорий, связанных с продуктомбудет возвращен в качестве category_count в коллекции

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