【问题标题】:Setting a query result literal in Laravel query builder?在 Laravel 查询生成器中设置查询结果文字?
【发布时间】:2014-10-21 23:39:15
【问题描述】:

我正在尝试使用 Laravel 查询构建器设置列结果文字。通过编写原始 SQL,我可以做到这一点:

SELECT
  `field1`, 
  `field2`, 
  'Test' AS `field3` 
FROM `Test`;

因此 MySQL 将始终为列 field3 返回 Test。我正在尝试使用select('field1', 'field2', '"Test" AS field3') 之类的查询生成器来执行此操作,但这似乎不起作用。会返回Test不是列名的错误。

有人知道我该怎么做吗?

【问题讨论】:

  • 你不是说field3 AS Test吗?
  • @Raphael_ 不,他希望字符串 Test 始终是 field3 的值(甚至可能不存在)。

标签: php mysql laravel


【解决方案1】:

你想要DB::raw()函数:

->select('field1', 'field2', DB::raw("'Test' AS field3"))

【讨论】:

  • 优秀。谢谢。
猜你喜欢
  • 2019-06-22
  • 2015-12-13
  • 2017-05-22
  • 1970-01-01
  • 1970-01-01
  • 2017-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多