无法弄清楚为什么此查询无法正常运行

时间:2013-03-05 23:08:16

标签: sql ms-access

每当条目的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";

每当我运行此查询时,我都会在我的网站上返回此内容:

  

警告:odbc_exec():SQL错误:[Microsoft] [ODBC Microsoft Access   驱动程序]       此子查询最多可以返回一条记录。

我有什么遗失的吗?

澄清......我正在拍摄:

假设我有这种形式的数据

WorkOrderNumber  AssignedEmp
2012087-28       Jeff      
2012087-28       Bill       
2012087-28       John       

我想查询这些数据并获得这样的结果......

WorkOrderNumber  Employee            
2012087-28       Jeff,Bill,John       

1 个答案:

答案 0 :(得分:2)

这会返回多条记录:

 SELECT tt2.AssignedEmp 
 FROM TestTable AS tt2 
 WHERE tt2.WorkOrderNumber=tt.WorkOrderNumber 
 ORDER BY tt2.AssignedEmp

哪个不行。您可以在其上抛出TOP (1)以进行快速而脏的修复,但我怀疑此子查询返回的内容未被返回,因此以这种方式修复可能是个坏主意。