如何在 Laravel Eloquent 中编写此 MySQL 查询?
How do I write this MySQL query in Laravel Eloquent?
我要运行
SELECT count(DISTINCT `ASIN`) as results FROM crawl_results WHERE user_id = 1 and website_id = 1
并期望得到 136 个结果
但是
`select('ASIN')->where('user_id', Auth::id())->where('website_id', $scanID)->distinct()->count();`
returns 814table 中的所有行
和
`select('ASIN')->where('user_id', Auth::id())->where('website_id', $scanID)->groupby('ASIN')->count();`
returns 8 个结果
你应该这样写查询:
DB::table('crawl_results')
->select(DB::raw('COUNT(DISTINCT(ASIN)) as results')
->where('user_id', 1)
->where('website_id',1)
->get();
首先创建模型并在需要的地方使用下面的代码
use App\CrawlResult;
CrawlResult::where('user_id',1)->where('website_id',1)->distinct('ASIN')->count('ASIN');
我要运行
SELECT count(DISTINCT `ASIN`) as results FROM crawl_results WHERE user_id = 1 and website_id = 1
并期望得到 136 个结果
但是
`select('ASIN')->where('user_id', Auth::id())->where('website_id', $scanID)->distinct()->count();`
returns 814table 中的所有行
和
`select('ASIN')->where('user_id', Auth::id())->where('website_id', $scanID)->groupby('ASIN')->count();`
returns 8 个结果
你应该这样写查询:
DB::table('crawl_results')
->select(DB::raw('COUNT(DISTINCT(ASIN)) as results')
->where('user_id', 1)
->where('website_id',1)
->get();
首先创建模型并在需要的地方使用下面的代码
use App\CrawlResult;
CrawlResult::where('user_id',1)->where('website_id',1)->distinct('ASIN')->count('ASIN');