Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Mối quan hệ MySQL với nhiều bảng

Cách hùng hồn:

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

Các mô hình có quan hệ chính xác (hasMany có thể được thay thế bằng hasOne nếu đó là mối quan hệ thực tế ở đâu đó):

// 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - giá trị mặc định cho TIMESTAMP (3)

  2. chèn dữ liệu nhị phân MySQL đơn giản

  3. PHP - sử dụng cột ngày giờ cập nhật STR_TO_DATE nhưng nó được cập nhật bản ghi trống như 0000-00-00 00:00:00

  4. Lệnh hướng dẫn không chính xác

  5. MySql - tính toán chênh lệch thời gian cho nhiều hàng