SQLSTATE[23000]:完整性约束冲突:1052 顺序子句中的"created_at"列不明确 拉拉维尔 5.5



我只是不知道我的代码出了什么问题以及为什么会产生此错误

SQLSTATE[23000]:完整性约束冲突:1052 顺序子句中的列"created_at"不明确(SQL:从processesprocesses的内部连接bags中选择 *。bag_id=bags.idbags的地方.type= 可回收和日期(processes.created_at( = 2018-09-18 00:00:00 按created_atDESC 限制 1( 排序,这是我的代码

$bag = Bagcollect::join('bags', 'bagcollects.bag_id', '=', 'bags.id')
->select('bags.type')
->where('bagcollects.bag_id', $request->input('bag_id'))
->first();
//this query produce error
$processexist = Process::join('bags', 'processes.bag_id', '=', 'bags.id')
->where('bags.type', $bag->type)
->whereDate('processes.created_at', Carbon::today())
->latest()
->first();

您需要在latest()中指定完整列。latest('process.created_at')或不使用latest()使用自定义 orderBy。

这是因为您正在从两个表中查询"created_at"列。您必须指定所需的列,例如:

$processexist = Process::join('bags', 'processes.bag_id', '=', 'bags.id')
->select('bags.column1', 'bags.columns2')
->where('bags.type', $bag->type)
->whereDate('processes.created_at', Carbon::today())
->latest()
->first();

最新更新