以下是我在Laravel 5.1中的查询
[,1] [,2]
[1,] 30 5
[2,] 3 50
及以下是等效查询
x_bounds <- t(matrix(c(
0,10,
10,30
), 2))
y_bounds <- t(matrix(c(
0,-50,
-50,1000
), 2))
请检查查询中的第1行:\App\Models\Project\Bids\ProjectBid_Model
::selectRaw('B.*')
->join('tblproject P','B.projectid','=','P.projectid')
->where('P.WhoCreatedTheProject',14)
->first()
。
如何更改
select B.* from `tblprojectbid`
inner join `tblproject P` on `B`.`projectid` = `P`.`projectid`
where `P`.`WhoCreatedTheProject` = 14 limit 1
到
select B.* from tblprojectbid
答案 0 :(得分:2)
如果你想使用Eloquent,恐怕没有简单的方法可以做到。
我在这种情况下使用实例的模型的全表名称
\App\Models\Project\Bids\ProjectBid_Model
::selectRaw('bid_table.*')
->join('tblproject AS P','bid_table.projectid','=','P.projectid')
->where('P.WhoCreatedTheProject',14)
->first()
但是,您也可以在ProjectBid_Model
中设置别名:
protected $table = 'bid_table AS B';
你可能会觉得这个表总是与B
别名,所以如果你有两个具有相同别名的模型(在这种情况下是B
),你将无法改变它后来只为一个表,所以我认为更好的是第一种方法(不使用别名)
答案 1 :(得分:1)
以下是最终解决方案。
\App\Models\Project\Bids\ProjectBid_Model
::selectRaw('B.*')
->from('tblprojectbid as B')
->join('tblproject as P','B.projectid','=','P.projectid')
->where('P.WhoCreatedTheProject',14)
->first()
答案 2 :(得分:0)
试试这个。
\DB::table('tblprojectbid as B')
->select()
->join('tblproject as P','B.projectid','=','P.projectid')
->where('P.WhoCreatedTheProject',14)
->first()