Merhaba arkadaşlar,
Bu şekilde iki tablom var.
DB::table('invoices')
->join('invoice_items', 'invoices.id', '=', 'invoice_items.invoice_id')
->get();
Bu sorgu bana şu sonucu döndürüyor;
[
{
"id": 1,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"invoice_id": 1,
"description": "açıklama",
"amount": "10.0000"
},
{
"id": 2,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"invoice_id": 1,
"description": "açıklama",
"amount": "15.0000"
},
{
"id": 3,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"invoice_id": 2,
"description": "açıklama",
"amount": "10.0000"
},
{
"id": 4,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"invoice_id": 2,
"description": "açıklama",
"amount": "15.0000"
}
]
Benim istediğimeloquent relationship ile dönen gibi;
[
{
"id": 1,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"items": [
{
"id": 1,
"invoice_id": 1,
"description": "açıklama",
"amount": "10.0000",
},
{
"id": 2,
"invoice_id": 1,
"description": "açıklama",
"amount": "15.0000",
}
]
},
{
"id": 2,
"date": "2016-06-06 01:10:49",
"due_date": "2016-06-06 01:10:49",
"sub_total": "110.0000",
"total": "143.0000",
"items": [
{
"id": 3,
"invoice_id": 2,
"description": "açıklama",
"amount": "10.0000"
},
{
"id": 4,
"invoice_id": 2,
"description": "açıklama",
"amount": "15.0000"
}
]
}
]
Bunu join kullanarak tek bir query ile nasıl yapabilirim?
Teşekkürler