laravel-从db::table()访问值->insert

3j86kqsm  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(335)

我正在使用faker构建一个insert查询,我想知道是否可以使用一个值插入另一个值。
下面是一个例子,对我的情况并不准确,但很好地解释了:

DB::table('debts')->insert([

    'name' => $faker->company,

    'debt' =>  $faker->randomFloat($nbMaxDecimals = 2, $min = 20000, $max = 10000000),

    'debt_paid' => 'debt' /  rand ( 2 , 8 ),

    'notes' => $faker->paragraph($nbSentences = 3, $variableNbSentences = true),

]);

如你所见,在 debt_paid 我想了解 'debt' 上面一行随机定义的。这是因为 debt_paid 需要符合逻辑,没有 debt 这可能毫无意义。
我知道在插入之前将“债务”定义为一个变量可以解决这个问题,但我想知道是否有更优雅的解决方案。

8yparm6h

8yparm6h1#

所以在插入物外这样做

$dbt = $faker->randomFloat($nbMaxDecimals = 2, $min = 20000, $max = 10000000);

DB::table('debts')->insert([
    'name' => $faker->company,
    'debt' =>  $dbt,
    'debt_paid' => $dbt /  rand ( 2 , 8 ),
    'notes' => $faker->paragraph($nbSentences = 3, $variableNbSentences = true),
]);

相关问题