Значение суммы из столбца A + B показано в C - PullRequest
0 голосов
/ 17 февраля 2019

У меня есть данные в базе данных для столбцов A, B, и в столбце C будет показана сумма A + B. У меня проблема в том, что я не знаю, как кодировать сумму A + B для всех примеров:200 данных, которые я имею в базе данных, используя LARAVEL

+----+------------+------------+
| id | logins_sun | logins_mon |
+----+------------+------------+
|  1 |     587    |     347    |
+----+------------+------------+
|  2 |     527    |     147    |
+----+------------+------------+
|  3 |     589    |     347    |
+----+------------+------------+
|  4 |     557    |     147    |
+----+------------+------------+
|  5 |     547    |     247    |
+----+------------+------------+

Ответы [ 2 ]

0 голосов
/ 17 февраля 2019

Предполагая, что у вас есть таблица с именем logins, вы можете создать модель Login со следующими данными:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Login extends Model
{

    protected $table = 'logins';
}

И затем сделать:

$records = Login::select(
    'logins_sun', 
    'logins_mon',
    \DB::raw('logins_sun + logins_mon as logins_sum')
)->get();

Это даст вам всестроки в формате:

+----+------------+------------+------------+
| id | logins_sun | logins_mon | logins_sum |
+----+------------+------------+------------+
|  1 |     587    |     347    |    934     |
+----+------------+------------+------------+

Если вы хотите обновить:

\DB::table('logins)->update([
  'logins_sum' => \DB::raw('logins_sun + logins_mon')
]);
0 голосов
/ 17 февраля 2019
DB::table('table_name')->selectRaw('logins_sun, logins_mon, (logins_sun + logins_mon) AS sum')->get(); 

может работать.Я предпочитаю, что logins_sun - это столбец A, logins_mon - это столбец B, и я создал новый столбец C с именем sum.

...