Ошибка при экспорте из MS SQL для доступа - PullRequest
0 голосов
/ 28 октября 2009

Я пытаюсь экспортировать следующие данные в запросе с сервера ms sql для доступа, он говорит об ошибке «Поле wkid уже существует в таблице результатов»

когда я пытаюсь выполнить то же самое с помощью анализатора запросов sql, он не выдает никакой ошибки. Я получаю результаты в сетке

Select a.wkid,a.stid,a.pfid,pf.pfname,a.modid,mm.md,a.catid,
[sp],revenue,profit,wkid  from
(select stid,modid,pfid,catid,
[sp],revenue,profit,wkid 
from dbo.modspsal
where wkid >= 200934 and wkid <= 201033 and 
catid in (20001,20002,20003,20004,20005,20006)) as a
left join mml mm on 
mm.modid=a.modid
left join (select distinct pfid,[pf name] as pfname from mml) as pf
on pf.pfid=a.pfid
order by a.wkid,stid,catid,a.pfid,a.modid

1 Ответ

2 голосов
/ 28 октября 2009

При экспорте в Excel вам необходимо иметь уникальные имена столбцов. Вы указали wkid 2.

Select  a.wkid,--HERE
        a.stid,
        a.pfid,
        pf.pfname,
        a.modid,
        mm.md,
        a.catid, 
        [sp],
        revenue,
        profit,
        wkid  --HERE
from    (
            select  stid,
                    modid,
                    pfid,
                    catid, 
                    [sp],
                    revenue,
                    profit,
                    wkid  
            from    dbo.modspsal 
            where   wkid >= 200934 
            and     wkid <= 201033 
            and     catid in (20001,20002,20003,20004,20005,20006)
        ) as a  left join 
        mml mm  ON  mm.modid=a.modid  left join 
        (
            select  distinct 
                    pfid,
                    [pf name] as pfname 
            from mml
        ) as pf on  pf.pfid=a.pfid 
order by a.wkid,stid,catid,a.pfid,a.modid

Удалите последний wkid, и все будет в порядке.

...