Laravel 和 MySql 查询行为
Posted
技术标签:
【中文标题】Laravel 和 MySql 查询行为【英文标题】:Laravel and MySql Query Behavior 【发布时间】:2021-04-16 01:44:08 【问题描述】:我有这个问题:
(
SELECT a.*, b.* FROM tbl_1
LEFT JOIN tbl_2...
)
UNION ALL
(
SELECT c.*,c.* FROM tbl_2
)
tbl1 和 tbl2 都包含相同的列(每列 50 个)名称..
所以,当我在 mysql Workbench 中运行这个查询时,我得到了 100 列,但是:
DB::select ( the query above )
我得到 50.. 重复的列在 Laravel 级别被删除..
为什么会这样?
谢谢你..
【问题讨论】:
您的代码引用了不存在的表别名。查询将不起作用。 哦..查询工作..这里的代码是一个示例..只是为了保持简短和重点 【参考方案1】:我怀疑问题在于列具有相同的名称。
这是模棱两可的,因此将它们删除也就不足为奇了。
除了为唯一的列提供新名称之外,您无能为力:
select a.*, b.col1 as b_col1, b.col2 as b_col2, . . .
【讨论】:
以上是关于Laravel 和 MySql 查询行为的主要内容,如果未能解决你的问题,请参考以下文章