2017-06-29 78 views
0

我有問題,我的2個疑問:Laravel原始查詢問題

查詢#1:

$rows = DB::table(self::TABLE_NAME) 
     ->selectRaw('subforum_id, count(1) as count') 
     ->groupBy('subforum_id') 
     ->get(); 

是否存在被雄辯寫這個可能性?

而第二個:

Topic::where('id', $topicId)->update(['posts_count' => +1]); 

我需要添加+1列POSTS_COUNT - 如何做到這一點?

有人可以解釋我什麼是RAW?

+0

爲什麼一日一造成問題? – apokryfos

回答

1

您可以編寫RAW查詢,如:

DB::table(DB::raw("Update topic set posts_count = posts_count + 1")) 

RAW查詢中幾乎每一個框架是可用的,它是用於製作複雜的查詢框架的方法是不夠的,讓你的查詢。

+0

是否有可能通過雄辯+原始做到這一點? – wenus

+0

是的,你可以。如:DB :: table('users') - > select(DB :: raw('count(*)as user_count,status')) - > where('status','<>',1) - > groupBy('status') - > get();' –