У меня есть две таблицы:Laravel 5 Запрос не работает
1). myurls
id domain
----------------------
1 google.com
2 test.com
3 example.com etc
2). Ссылки
id myurls_id end_date created_at
---------------------------------------------------
1 2 2016-11-30 00:00:00 2016-11-30 00:00:00
2 2 2016-12-01 00:00:00 2016-11-30 00:00:00
3 2 NULL 2016-11-30 00:00:00
4 2 2017-01-01 00:00:00 2016-12-01 00:00:00
5 3 2016-11-24 00:00:00 2016-12-01 00:00:00
6 3 2016-10-01 00:00:00 2016-12-01 00:00:00
и т.д ... они имеют один ко многим отношений с myurls_id, как вы можете увидеть
в этом примере для myurls_id (2) мы имеем 4 записи: 2 записи, где end_date истек 1 запись, где end_date является NULL 1 запись, где end_date не истек
Я хочу написать запрос Laravel отношения, где он получит меня истек URL, что означает запрос результаты, где, если вы найдете по крайней мере один NULL или один не истек не указан мы o nly хотите перечислить, если все 4 записи истекли. как я могу это сделать
вот что у меня есть, но ее не работает:
$expired_domains = Myurls::with(['links' => function ($query) {
$query->whereNotNull('end_date')
->where('end_date','<',Carbon::now())
->where('created_at', '<', Carbon::now())
->orderBy('created_at', 'asc')
->first();
}])->get();
это показывает мне, что test.com & example.com оба EXPIRED что неправильно, но его не потому, что есть по меньшей мере, один end_date «NULL» или не истек запись в таблице ссылок, то предположим, только дайте мне example.com Истекло, потому что все его связь end_date истек
Как это сделать, я ценю вашу помощь
любая помощь? – user3150060
Любой, у кого есть идеи, может предоставить мне sql-запрос? – user3150060