laravel - laravel 查询生成器:我有 mysql 查询
问题描述
我有以下要转换为 Laravel 5.8 查询生成器的 MySQL 查询。我怎么能这样做?
SELECT
u.id,
u.username,
(select count(*) as invalid_count from invalid_template_messaging where user_id = u.id) as t1,
(select count(*) as valid_count from template_messagings where user_id = u.id) as t2 FROM
users as u GROUP BY
u.id
解决方案
你可以这样写这个查询
DB::select(`u.id`,`u.username`)
->selectSub(`select count as invalid_count from invalid_template_messaging where user_id = u.id`, `t1`)
->selectSub(`select count as valid_count from template_messagings where user_id = u.id`, `t2`)
->from(`users as u`)
->groupBy(`u.id`)
->get();
推荐阅读
- java - 数据未添加到数据库 SQLITE
- google-cloud-platform - Cloud Run on GKE 自动扩缩
- git - 将主仓库从 Bitbucket 迁移到 Github。如何将克隆的 repo 重新连接到新的 Github repo?
- winforms - SignalR 客户端在第二个会话的 start() 上挂起
- python - TF 2.0 顺序 CNN 到 LSTM 中用于回归“负维度大小”错误
- android - 您有一个尚未推出的生产版本
- node.js - 在 docker-compose build 上安装 node.js 时出错
- java - Docker multistage COPY:没有这样的文件或目录
- jquery - 使用 CSS 或 JQuery 更改 Div 的形状
- amazon-web-services - Ansible AWS 动态清单实例过滤器不起作用