sql >> Database >  >> RDS >> Mysql

MySQL-relatie met meerdere tabellen

Welsprekende manier:

// Makes that have forsale nested relation
Make::whereHas('models', function ($q) {
    $q->whereHas('trims', function ($q) {
        $q->has('forsales');
    });
})->get(); // returns Eloquent Collection

Modellen met de juiste relaties (hasMany kan worden vervangen door hasOne als dat ergens een daadwerkelijke relatie is):

// Make model
public function models()
{
    return $this->hasMany('CarModel');
}

// CarModel (as you can't use Model name)
public function trims()
{
    return $this->hasMany('Trim');
}
public function make()
{
    return $this->belongsTo('Make');
}

// Trim model
public function forsales()
{
    return $this->hasMany('Forsale');
}
public function carModel()
{
    return $this->belongsTo('CarModel');
}

// Forsale model
public function trim()
{
    return $this->belongsTo('Trim');
}


  1. Is er een prestatiehit met behulp van decimale gegevenstypen (MySQL / Postgres)

  2. SQL FLOAT:3 punten die u zullen helpen rare rekenfouten te vermijden

  3. Hoe dubbele gegevens tussen twee tabellen te vinden en op één te verwijderen?

  4. mysql opgeslagen procedure aanroepen vanuit c#?