【发布时间】:2020-06-03 10:07:51
【问题描述】:
选择 DISTINCT i.filename "文件名", p.ips_acknow_id "ISP 确认 ID" from isp_acknows i LEFT JOIN pdfreads p ON i.id = p.ips_acknow_id
我也可以通过连接来做到这一点,但我需要这种格式来提高性能。
Note:
1. isp_acknows table
Schema::create('isp_acknows', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->unsignedInteger('user_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->string('filename')->nullable();
$table->string('filedisplayname')->nullable();
$table->string('privilege')->nullable();
$table->string('fileversion')->nullable();
$table->string('remarks')->nullable();
$table->softDeletes();
});
2. pdfreads Table
Schema::create('pdfreads', function (Blueprint $table) {
$table->id();
$table->unsignedInteger('user_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->unsignedInteger('ips_acknow_id');
$table->unique(['user_id','ips_acknow_id']);
$table->timestamps();
【问题讨论】:
-
使用 Laravel 还是使用 Eloquent ?
-
return IspAcknow::select('isp_acknows.id','isp_acknows.filename','isp_acknows.filedisplayname','isp_acknows.fileversion','isp_acknows.privilege','isp_acknows.remarks') ->LeftJoin('isp_acknows','isp_acknows.id','=','pdfreads.isp_acknows_id')->paginate(1000);我在 laravel 中尝试但失败了。
-
文档可以提供帮助:laravel.com/docs/7.x/queries#joins。看来
leftJoin应该是减号l