我的查询在昨天工作正常,但今天,我的查询产生空结果。即使没有这样的条件,我也试过了
"select `person`.`name`, `path`, `person`.`username`, `price`, `service`, `person`.`city`, `person`.`streetaddress`, `person`.`postalcode`, `date` from `person` inner join `services` on `person`.`id` = `services`.`person_id` inner join `imagesforperson` on `person`.`id` = `imagesforperson`.`person_id` group by `person`.`name
当我尝试使用toSql()调试它时,这是我的查询。如您所见,我没有提供任何WHERE条件,但它仍然返回空集合。
Collection {#212 ▼
#items: []
}
有人可以建议可能出错的地方吗?调试此问题的任何提示?
我正在使用Larvel 5.4,使用MySQL作为数据库。
代码:
$person = \App\person::query()
-> select (['person.name', 'path', 'person.username', 'price', 'service','person.city', 'person.streetaddress', 'person.postalcode', 'date'])
-> groupBy('person.name')
-> join ('services' , 'person.id', '=', 'services.person_id')
-> join ('imagesforperson' , 'person.id', '=', 'imagesforperson.person_id')
-> get();
dd($person) //to debug, this returns empty collection as posted above
答案 0 :(得分:3)
您的查询看起来有两个内部联接,这意味着如果这些相关记录不存在(例如services
和imagesforperson
),您将无法获得任何结果。你可能会考虑从那里开始。也许您可以尝试删除联接和/或使它们保持联接或某些内容,这样即使不存在person
或services
,您的查询仍会返回imagesforperson
条记录。