-4
insert into Employee_Document 
values(FristName, LastName, BeginWeek, EndWeek, 
       Hrs_Mon, hrs_tues, Hrs_Wed, Hrs_Thu, Hrs_Fri, Total_Hours,
       TaskDesc_Mon, TaskDesc_Tues, TaskDesc_Wed, TaskDesc_Thu, TaskDesc_Fri, '')

select 
   FristName, LastName, BeginWeek, EndWeek, 
   TotalHours where TimeSheetDate='31-12-2012' AS Hrs_Mon,'08:00:00',
   TotalHours where TimeSheetDate='02-01-2013' AS Hrs_Wed,
   TotalHours where TimeSheetDate='03-01-2013' AS Hrs_Thu,
   TotalHours where TimeSheetDate='04-01-2013' AS Hrs_Fri,
   TaskDescription where TimeSheetDate='31-12-2012' AS TaskDesc_Mon,
   TaskDescription where TimeSheetDate='02-01-2013' AS TaskDesc_Wed,
   TaskDescription where TimeSheetDate='03-01-2013' AS TaskDesc_Thu,
   TaskDescription where TimeSheetDate='04-01-2013' AS TaskDesc_Fri,'' 
from 
   vw_TSDailyTotalHoursTaskDesc)

私は SQL Server を初めて使用するので、このステートメントに誤りはありますか。

前もって感謝します。

4

2 に答える 2

0

(笑)

OK、まずキーワード VALUES を削除する必要があります。基本的な挿入構文は次のいずれかです。

INSERT [INTO] tablename (column list...) VALUES (literals...)

また

INSERT [INTO] tablename (column list) SELECT...

上記は後者なので、VALUES を完全に削除してください。

次に、「」という名前のそのような列はありません(本当にひねくれている場合は、限界で['']になる可能性があります)、それを整理してください。

最後に、私はあなたがこれで何をしようとしているのか推測しています

TotalHours where TimeSheetDate='31-12-2012' AS Hrs_Mon,'08:00:00',

おそらく次のようなものです

CASE WHEN TimeSheetDate='31-12-2012' THEN TotalHours ELSE '08:00:00' END AS Hrs_Mon,

か何か??

于 2013-01-30T15:31:29.107 に答える
-2

私が見る限り、間違っているのは、最初の行に必要のない単語の値があるということだけです。

于 2013-01-30T13:21:11.920 に答える