我有这样的查询:
$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)";
我想运行它。所以我试过了:
$res = DB::select($query,array("grp_id"=>250,"user_id"=>1));
res理想情况下应该有一个布尔值,但它有一个类似的数组:
[{"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}]
注意最后的1,即我感兴趣的值(它的1或0)。
我怎样才能做到这一点,或者以“laravel”的方式实现这个目标?
答案 0 :(得分:0)
为什么不检查它是否为空:
$query = "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 LIMIT 1";
$res = DB::select($query,array("grp_id"=>250,"user_id"=>1));
return (count($res) > 0) ? 1 : 0;