最近在SQL SERVER 2008 上使用 INSERT INTO 時, 發覺塞入的資料沒有依日期排序, 而且後面也不能使用 order by 語法, 如下: 會出現語法錯誤
insert INTO dbo.VKAAJ_DAILYOFF
(DUTYDATE)
(
SELECT WORKDATE
FROM dbo.DUTYWORK A,DBO.WORKTIME B
WHERE
EMPLOYECD = @EMPLOYECD
AND WORKDATE >=@BEGINDATE AND WORKDATE <= @ENDDATE
AND HOLIDAY = 'N'
AND A.WORKTYPE = B.WORKTYPE
AND A.COMPANYCD= B.COMPANYCD
AND A.WORKDATE NOT IN
(SELECT DUTYDATE FROM DBO.DAILYOFF WHERE
EMPLOYECD = @EMPLOYECD
AND WORKDATE >= @BEGINDATE AND WORKDATE <= @ENDDATE)
)
ORDER BY WORKDATE
=========================================
後來將 () 拿掉就可以了
insert INTO dbo.VKAAJ_DAILYOFF
(DUTYDATE)
SELECT WORKDATE
FROM dbo.DUTYWORK A,DBO.WORKTIME B
WHERE
EMPLOYECD = @EMPLOYECD
AND WORKDATE >=@BEGINDATE AND WORKDATE <= @ENDDATE
AND HOLIDAY = 'N'
AND A.WORKTYPE = B.WORKTYPE
AND A.COMPANYCD= B.COMPANYCD
AND A.WORKDATE NOT IN
(SELECT DUTYDATE FROM DBO.DAILYOFF WHERE
EMPLOYECD = @EMPLOYECD
AND WORKDATE >= @BEGINDATE AND WORKDATE <= @ENDDATE)
ORDER BY WORKDATE
2015年6月24日 星期三
訂閱:
意見 (Atom)