【发布时间】:2016-01-03 21:24:44
【问题描述】:
我有一个带有父 id 和子 category_id 的自引用表,这个查询有 SQL:
SELECT a.id, a.name, b.name, a.created_at
FROM shop_categories a
LEFT JOIN shop_categories b ON (a.id = b.category_id)
WHERE a.category_id = 0
我正在尝试将其翻译为 Laravel 查询构建器语言,我设法想出了这个,但它不起作用,我不知道我做错了什么,我的 laravel 查询:
$shopcategories = DB::table('shop_categories as a')
->select('a.id', 'a.name','b.name','a.created_at')
->leftJoin('shop_categories as b', function ($join) {
$join->on('a.id', '=', 'b.category_id');
})
->where('a.category_id', '=', 0)
->get();
提前致谢。
【问题讨论】:
-
什么不完全有效?错误?结果错误?
-
laravel 查询结果错误
-
调用 toSql() 而不是 get() 以查看生成的 SQL 查询并检查它是否符合您的预期。如果没有,请粘贴生成的查询。
标签: php mysql sql laravel laravel-5