У меня есть временная структура таблицы @temp2
, как это
route total driverID
------------------------
10B 300
7B 400
, и я хотел бы добавить столбец driverID
с результатом, подобным 5555, 68989
, чтобы сделать это, Я использую курсор для l oop другая таблица выглядит следующим образом
driverID routeNo
-------------------
5555 10B
68989 10B
72000 7B
Вот код
declare @driverID varchar(max)
declare @routeNew varchar(20)
DECLARE brand_cursor CURSOR FOR
select distinct driver_id, route_number from [dbcwl].[dbo].[collection_deduction_summary]
where YEAR(trans_date) = @year
and MONTH(trans_date) = @month
and route_number in (select actual_route from [dbcwl].[dbo].[livedispatchingdata_pmhs_daily_summary] where status = 'OK' and YEAR(trans_date) = @year AND month(trans_date) = @month )
and vehicle_id in (select vehicle_id from [dbcwl].[dbo].[livedispatchingdata_pmhs_daily_summary] where status = 'OK' and YEAR(trans_date) = @year AND month(trans_date) = @month )
group by route_number, driver_id
OPEN brand_cursor
FETCH NEXT FROM brand_cursor
INTO @driverID, @routeNew
WHILE @@FETCH_STATUS = 0
BEGIN
--update @temp2
update @temp2 set driverID += ','+ @driverID where routeNo = @routeNew;
FETCH NEXT FROM brand_cursor
INTO @driverID, @routeNew
END
CLOSE brand_cursor;
DEALLOCATE brand_cursor;
К сожалению, я получил столбец driverID
ноль
и хотел бы, чтобы окончательная временная таблица выглядела следующим образом:
route total driverID
------------------------
10B 300 5555,68989
7B 400 72000