我只是试图将雇员的姓名连接到一个字段中,只要条目的WorkOrderNumber值相同。无法弄清楚为什么这个查询没有正常运行
$Data = "SELECT tt.WorkOrderNumber AS WN,
SUBSTRING(SELECT tt2.AssignedEmp
FROM TestTable AS tt2
WHERE tt2.WorkOrderNumber=tt.WorkOrderNumber
ORDER BY tt2.AssignedEmp) AS emp
FROM TestTable AS tt";
每当我运行此查询我得到这个回在我的网站:
Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] At most one record can be returned by this subquery.
有我丢失的东西?
为了澄清...我拍摄的:
可以说我有这种形式
WorkOrderNumber AssignedEmp
2012087-28 Jeff
2012087-28 Bill
2012087-28 John
我想查询数据,并得到这样的结果数据.. 。
WorkOrderNumber Employee
2012087-28 Jeff,Bill,John
我不确定MS Access是否支持它,但SQL Server具有'FOR XML PATH'功能。请参阅:http://stackoverflow.com/questions/273238/how-to-use-group-by-to-concatenate-strings-in-sql-server – JodyT 2013-03-05 23:31:40
我尝试过,但它一直给我语法错误。也许它不支持它 – Hoser 2013-03-05 23:43:40
访问不。你绝对不能在Access 2003或更早版本中这样做,并且我非常肯定你在Access中根本无法做到这一点(我想可能是多值字段会有所帮助,但看起来不会像他们那样)而不使用VBA。 – 2013-03-05 23:44:10