У меня есть запрос в обычном SQL ниже, и я хочу изменить его на запрос ремесленника,
select count(P.id), DATEDIFF(P.tarehe_ya_kujifungua,P.tarehe_ya_kuzaliwa) as
umri from postnatals P INNER JOIN register13s R ON P.namba_ya_kadi_RCH4 =
R.Namba_ya_kadi WHERE EXTRACT(MONTH FROM tarehe_ya_hudhurio) = EXTRACT(MONTH
FROM '2018-06-12') group by P.id HAVING count(DISTINCT R.hudhurio) > 1 AND
umri >= 7305;
У меня есть модель Postnatal.php
за postnatals
стол, а также у меня есть Register13.php
за register13s
Таблица.
Вот как вы можете преобразовать этот запрос в Laravel Query Builder.
DB::table('postnatals as P')
->innerJoin('register13s as R', 'P.namba_ya_kadi_RCH4','=', 'R.Namba_ya_kadi')
->whereRaw('EXTRACT(MONTH FROM tarehe_ya_hudhurio) = EXTRACT(MONTH FROM '2018-06-12')')
->groupBy('P.id')
->having(DB::raw('count(DISTINCT R.hudhurio)'),'>',1)
->having('umri', '>', 7305)
->selectRaw('select count(P.id), DATEDIFF(P.tarehe_ya_kujifungua,P.tarehe_ya_kuzaliwa) as umri')
->get()
Надеюсь это поможет.
Других решений пока нет …