首页 > 解决方案 > Laravel:原始 sql 子查询

问题描述

我知道原始语句可能会造成SQL 注入漏洞,但我想将子查询从终端复制粘贴到 laravel 控制器,因为我真的没时间了,我需要快点。

我想要这样的东西:

$nmbrP = DB::select('SELECT count(*) from ( SELECT patient , medcine from dossier_medicals GROUP by patient having medcine = ? ) as nbr;' , [$id]);
dd($nmbrP);

子查询在终端中完美运行,但在浏览器中引发错误。

标签: mysqllaravelsubquery

解决方案


尝试:

$nmbrP = DB::selectRaw('count(*) from ( SELECT patient , medcine from 
dossier_medicals GROUP by patient having medcine = ? ) as nbr;' , [$id]);
dd($nmbrP);

更多关于 selectRaw 的信息:

https://laravel.com/docs/7.x/queries#raw-methods


推荐阅读