سلام دوستان.
من به دلایلی اطلاعات کاربر رو داخل یه جدول جدا به اسم profiles ذخیره کردم.
من سه تا جدول دارم:
جدول users
Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('role')->default('user');
            $table->string('email')->unique();
            $table->string('password');
            $table->timestamps();
        });جدول profiles
Schema::create('profiles', function (Blueprint $table) {
            $table->id();
            $table->foreignId('user_id')->constrained()->onUpdate('CASCADE')->onDelete('CASCADE');
            $table->string('fullName');
            $table->string('phone');
            $table->timestamps();
        });جدول jobs
Schema::create('jobs', function (Blueprint $table) {
            $table->id();
            $table->foreignId('user_id')->constrained()->onUpdate('CASCADE')->onDelete('CASCADE');
            $table->string('slug');
            $table->string('title');
            $table->string('category_name');
            $table->string('history');
            $table->string('state');
            $table->string('city');
            $table->longText('description');
            $table->boolean('approved')->default(0);
            $table->timestamps();
        });حالا زمانی که میخوام بین شغل های تایید شده جستجو رو بر اساس عنوان شغل که داخل جدول jobs و اسم کاربر که داخل جدول profiles است انجام بدم به ارور زیر بر میخورم:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'jobs.profile_id' in 'where clause' (SQL: select count(*) as aggregate from `jobs` where `title` LIKE %آرمین رحمتی% or exists (select * from `profiles` where `jobs`.`profile_id` = `profiles`.`id` and `fullName` LIKE %آرمین رحمتی% and `approved` = 2) and `approved` = 2)کدی که نوشتم هم به صورت زیر هست.
public function approved() {
        $jobs = Job::query()
            ->when($keyword = request('search'), function ($query) use ($keyword) {
                $query->where('title', 'LIKE', "%{$keyword}%")
                ->orWhereHas('profile', function ($query) use ($keyword) {
                $query->where('fullName', 'LIKE', "%{$keyword}%")
                ->where('approved', 2);
            });
        });
        $jobs = $jobs->where('approved', 2)->latest()->paginate(10);
        return view('panel.jobs.approved', compact('jobs'));
    }با سلام و وقت بخیر دوست گرامی
همونطور که پیغام ارورتون می گه ستون profile_id در جدول jobs وجود نداره
شما برای رفع این مشکلتون می تونید
1.یک ریلشن بنویسید و کالکشنتون رو فیلتر کنید که این روش کندتریه 
@fakhraddin
الان کدمو به صورت زیر نوشتم ولی هچنان همون ارور رو میده.
public function approved() {
        $jobs = Job::query()
        ->join('profiles', 'jobs.id', '=', 'profiles.user_id')
            ->when($keyword = request('search'), function ($query) use ($keyword) {
                $query->where('title', 'LIKE', "%{$keyword}%")
                ->orWhereHas('profile', function ($query) use ($keyword) {
                $query->where('fullName', 'LIKE', "%{$keyword}%")
                ->where('approved', 2);
            });
        });
        $jobs = $jobs->where('approved', 2)->latest()->paginate(10);
        return view('panel.jobs.approved', compact('jobs'));
}با سلام و وقت بخیر
من چندتا نکته در مورد کوئری که زدید بدم و بعد براتون یک کوئری با منطق بهتر خدمتتون ارائه می دم 
$jobs = Job::leftJoin('profiles', function($join) {
        $join->on('jobs.user_id', '=', 'profiles.user_id');
      })->where('jobs.approved', 1)->whereRaw('jobs.title LIKE ?', '%'.$keyword.'%')->
    whereRaw('profiles.fullName LIKE ?', '%'.$keyword.'%')->latest->
    get(['jobs.id', 'jobs.title', 'profiles.fullName']);امیدوارم توضیحاتم هر چند طولانیه کمک کنه به شما و اگه بازم نیاز به راهنمایی داشتید خوشحال می شم کمکی بکنم
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟