用于tablename的laravel mysql列

时间:2018-06-01 11:29:02

标签: mysql laravel laravel-orm

我有一个laravel mysql查询来选择名为title的列,将表名称作为Source

$query = DB::select('select title, "'.$table_name.'" as source from ' . $table_name);

但这会返回一个数组,我想对上面的查询执行联合查询。所以我采用了 laravel DB :: table()

DB::table($table_name)->select('title, "'.$table_name.'" as source')

但上述查询会返回错误未知列名

  

SQLSTATE [42S22]:未找到列:1054未知列'" tablename"'在'字段列表' (SQL:从title选择"tablename"sourcetablename

我只想添加另一个名为source的字段,并将表名放在所有行中。

我对表的数量重复相同,最后在渲染之前对它们进行排序。 请帮帮我。

提前谢谢你。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。这post对我有所帮助。

$row = sprintf('"%s" AS source', $tablename);
$query = DB::table($tablename)->select('title', DB::raw($row));