【发布时间】:2015-03-22 17:03:24
【问题描述】:
所以我想准备一个列表放入 laravel 的组合框中,我想使用连接来连接 3 列的值,我可以用这个来实现
public function deviList() {
return Device::select(DB::raw('CONCAT(DESC, OS, OS_V) AS FullDesc'), 'DEVI_ID')
->where('STATUS', 2)
->orderBy('DESC')
->lists('FullDesc', 'DEVI_ID');
}
但是,最好用空格或斜线分隔列的值,所以我这样做了,就像其他人在其他地方推荐的一样:
public function deviList() {
return Device::select(DB::raw('CONCAT(DESC," ",OS," ",OS_V) AS FullDesc'), 'DEVI_ID')
->where('STATUS', 2)
->orderBy('DESC')
->lists('FullDesc', 'DEVI_ID');
}
但是我收到一条错误消息 SQLSTATE[42S22]: [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Invalid column name ' ' (所以我猜测与示例不同在其他地方给出的,这些分隔被读取就好像它们是列一样?)那么我怎样才能与某种分隔连接呢?
【问题讨论】:
-
能否尝试切换引号,让 SQL 语句使用单引号:
DB::raw("CONCAT(DESC,' ',OS,' ',OS_V) AS FullDesc")?
标签: php sql sql-server laravel laravel-4