/ / Jak mogę użyć Join In The Leftjoin With Laravel? - php, mysql, laravel

Jak korzystać z Join In Leftjoin z Laravel? - php, mysql, laravel

Mam pytanie dotyczące leftjoin i dołącz do laravel Chcę przepisać następującą próbkę do laravel, jak mogę to zrobić?

LEFT JOIN(advertsolution_f SF
JOIN function_d FD ON SF.fd_id = FD.fd_id
JOIN function_m FM ON FD.fm_id = FM.fm_id)
ON SM.ads_id = SF.ads_id

próbuję przepisać w ten sposób, ale myślę, że to nie jest dobry pomysł.

->leftJoin($SF,$SM.".ads_id",$SF.".ads_id")
->leftjoin($FD,$SF.".fd_id",$FD.".fd_id")
->leftjoin($FM,$FD.".fm_id",$FM.".fm_id")

ponieważ nie mam pojęcia, jak prywatnie dołączyć do stołu do $ SF.

Odpowiedzi:

0 dla odpowiedzi № 1

Mapa taka jak ta,

->leftJoin($SF,$SM.".ads_id","=",$SF.".ads_id")
->leftjoin($FD,$SF.".fd_id","=",$FD.".fd_id")
->leftjoin($FM,$FD.".fm_id","=",$FM.".fm_id")

Brakuje = zapytanie do logowania.

EDYTOWAĆ

PRZYKŁAD Dałeś, piszę zapytanie w jego imieniu, wystarczy zmapować oryginalne pola i tabele,

DB::table("a")
->leftJoin("b","b.a_id","=","a.id")
->leftJoin("c","c.b_id","=","b.id")
->leftJoin("d","d.bd_id","=","b.bdid")
->get();

Odwzoruj to zapytanie zgodnie z wymaganiami, powinno działać.


0 dla odpowiedzi nr 2

Do wykonania tak złożonego zapytania możesz użyć RAW EXPRESSIONS lubić:

$users = DB::table("users")
->select(DB::raw("count(*) as user_count, status"))
->where("status", "<>", 1)
->get();

Surowe wyrażenia

Czasami może być konieczne użycie surowego wyrażenia wzapytanie. Te wyrażenia zostaną wstrzyknięte do zapytania jako ciągi, więc uważaj, aby nie utworzyć żadnych punktów wstrzykiwania SQL! Aby utworzyć surowe wyrażenie.

Odniesienie