Laravel / MySql如何创建虚拟列[复制]

eanckbw9  于 2023-08-08  发布在  Mysql
关注(0)|答案(1)|浏览(89)

此问题在此处已有答案

Subquery as generated column in mysql?(2个答案)
昨天关门了。
我试图在MySql数据库中创建一个虚拟列,该列返回一个关联表的列的和。正确的语法是什么?我还想在laravel迁移中包含它。然而,它给我语法错误。

public function up()
{
    DB::statement('ALTER TABLE videos 
      ADD COLUMN video_view_countINT 
      AS (SELECT SUM(number_of_views)
      FROM video_view_logs 
      WHERE video_view_logs.video_id = videos.id) 
      VIRTUAL');

字符串
运行Artisan迁移时发现存在语法错误...

3pvhb19x

3pvhb19x1#

Laravel使用ORM来写SQL,我认为你应该使用Eloquent ORM。https://laravel.com/docs/10.x/eloquent

DB::table("video_view_logs.video_id = videos.id) virtual')")
->select("video_view_logs")
->get();

字符串

相关问题