laravel5中where where条件内的两个子选择查询?

时间:2015-05-14 07:05:22

标签: php mysql subquery laravel-5

我想比较Laravel5中查询条件的两个选择查询,

我在laravel中的查询的$result = pg_query(connect(), "SELECT id, name, surname FROM person ORDER BY name ASC, surname ASC"); $person = pg_fetch_all($result); echo '<select value="Person" name="person">'; for($i=0; $i<sizeof($person); $i++) { $person = $person[$i]['name'].' '.$person[$i]['surname']; echo "<option>".$person."<span hidden>:".$person[$i]['name']."</option>"; } echo '</select>'; 条件如下所示,但它并非如此。

即,where

select from invoice where (select query1) == (select query2)

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

DB :: raw不会给你一个值。这只是一种创建表达式的方法。如果你想这样做,你应该使用:

use lib '/home/hacklionex/perl5/lib/perl5';

但是这会给你一个数组。所以,我会做以下事情:

DB::select(DB::raw("(SELECT SUM(payments.amount) from payments"))

甚至更容易

DB::select(DB::raw("(SELECT SUM(payments.amount) as pay from payments"))[0]->pay