Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php “Laravel查询生成器”;其中;_Php_Postgresql_Laravel 5 - Fatal编程技术网

Php “Laravel查询生成器”;其中;

Php “Laravel查询生成器”;其中;,php,postgresql,laravel-5,Php,Postgresql,Laravel 5,我有以下疑问 select * from (SELECT accident.id,count(*) as cnt from accident left join driver on driver.accident_id = accident.id group by accident.id)alias where cnt = 1 这是我的查询生成器 $accidents = DB::table('accident') ->leftjoin('driver','acciden

我有以下疑问

select * from (SELECT accident.id,count(*) as cnt from accident left join driver on driver.accident_id = accident.id group by accident.id)alias where cnt = 1
这是我的查询生成器

$accidents = DB::table('accident')
        ->leftjoin('driver','accident.id','driver.accident_id')
        ->select(DB::raw('accident.*,count(*) as jumlah_kendaraan'))->groupBy('accident.id')
        ->where('jumlah_kendaraan', $jumlah_kendaraan);
我试图像上面那样转换它,但我得到了一个错误

SQLSTATE[42703]: Undefined column: 7 ERROR: column "jumlah_kendaraan" does not exist

有人能帮我解决吗?提前感谢

您不能使用where子句过滤聚合函数的结果
count()
,而应使用
having

->having('jumlah_kendaraan', $jumlah_kendaraan) 
或者使用你的完整表达

->havingRaw('count(*) = '.$jumlah_kendaraan)

where子句
不能直接使用组函数的别名,请使用

->where('count(*)', $jumlah_kendaraan);

您也可以使用
having
,但如果
having
不起作用,请使用上面给出的用法。

我将where替换为having,但仍然会出现相同的错误sir@PinballWizard我又加了一个条款,你确定你有相同的错误还是不同的错误?