Ich habe eine Abfrage wie folgt:Laravel läuft Select Exists Abfragen
$query = "Select EXISTS(SELECT * FROM grp_user AS pivot JOIN groups
AS g ON pivot.grp_id = g.id JOIN vote ON g.id = vote.grp_id WHERE
pivot.grp_id = :grp_id AND pivot.user_id = :user_id)";
und ich möchte es laufen. so habe ich versucht:
$res = DB::select($query,array("grp_id"=>250,"user_id"=>1));
res sollte idealerweise einen Booleschen Wert haben, sondern hat es eine Reihe wie:
[{"EXISTS(SELECT * FROM grp_user AS pivot JOIN groups AS g ON pivot.grp_id = g.id JOIN vote ON g.id = vote.grp_id WHERE pivot.grp_id = ? AND pivot.user_id = ?)":1}]
Beachten Sie die 1 am Ende, das ist der Wert, ich bin interessiert an (es ist entweder 1 oder 0).
Wie kann ich diese Arbeit machen, oder erreichen Sie das "Laravel" Weg?
Ist es noch ein 'Builder' Objekt? Was bringt das Ergebnis von 'dd ($ res)'? Haben Sie versucht, ein '-> first()' oder '-> get()' an das Ende von '$ res = DB :: select();'? –
ist ein Array. Wenn ich anhänge -> get(), erhalte ich einen Fehler Aufruf an eine Memberfunktion get() für Array –
warum nicht nur SELECT COUNT (*) FROM grp_user AS pivot JOIN Gruppen AS g ON pivot.grp_id = g.id JOIN Abstimmung auf g.id = vote.grp_id WHERE pivot.grp_id =: grp_id UND pivot.user_id =: user_id'? – Alex