2

ストアド プロシージャを変更しています。実行しようとすると、次のようになります。

Msg 156, Level 15, State 1, Procedure vtg_asmbltimephasedashassy, Line 20  
Incorrect syntax near the keyword 'AS'   

しかし、20行目に行くと、キーワード「as」がなく、20行目の直前または直後の行にもありません。行の数え方が間違っているのかもしれません。

20行目まで数えると、次の行が表示されます

jobmtl.partnum=partwhse.partnum FULL OUTER JOIN  

問題を解決するために必要なこととして、誰かが私を正しい方向に向けることができますか? 私の enitre ストアド プロシージャは以下のとおりです。

USE [mfgsys803]
GO
/****** Object:  StoredProcedure [dbo].[vtg_asmbltimephasedashassy]    Script Date:   01/08/2013 12:59:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER proc [dbo].[vtg_asmbltimephasedashassy] @p_plant varchar(max) 
as 
begin 
set nocount on;

SELECT     jobhead.jobnum, sum(partwhse.onhandqty) as 'onhandqty', jobhead.partnum, jobhead.revisionnum, jobhead.prodqty, jobhead.startdate, jobhead.duedate, jobhead.reqduedate, 
                  jobhead.commenttext, jobmtl.issuedcomplete, jobmtl.issuedqty, jobmtl.mtlseq, jobmtl.partnum AS 'mtlpart', jobmtl.requiredqty, jobmtl.qtyper, jobmtl.reqdate, 
                  partwhse.warehousecode, prodgrup.description
FROM         jobmtl LEFT OUTER JOIN
                  partwhse INNER JOIN
                  warehse ON partwhse.company = warehse.company AND partwhse.warehousecode = warehse.warehousecode ON jobmtl.company = partwhse.company AND 
                  jobmtl.partnum = partwhse.partnum FULL OUTER JOIN
                  prodgrup INNER JOIN
                  jobhead ON prodgrup.company = jobhead.company AND prodgrup.prodcode = jobhead.prodcode ON jobmtl.company = jobhead.company AND 
                  jobmtl.jobnum = jobhead.jobnum
WHERE     (jobhead.jobreleased = 0) AND (jobhead.jobfirm = 1) AND (jobhead.jobengineered = 1) AND (jobhead.company = 'lot') and  (prodgrup.description like '%assy%') and (jobhead.plant=@p_plant) and (warehse.plant=@p_plant)

group by     jobhead.jobnum, jobhead.partnum, jobhead.revisionnum, jobhead.prodqty, jobhead.startdate, jobhead.duedate, jobhead.reqduedate, 
                  jobhead.commenttext, jobmtl.issuedcomplete, jobmtl.issuedqty, jobmtl.mtlseq, jobmtl.partnum AS 'mtlpart', jobmtl.requiredqty, jobmtl.qtyper, jobmtl.reqdate, 
                  partwhse.warehousecode, prodgrup.description


end 
4

2 に答える 2

3

この部分をグループから外す

jobmtl.partnum AS 'mtlpart'

成功する

jobmtl.partnum 
于 2013-01-08T19:35:08.967 に答える
0

行番号は、単にエラーを含む SQL ステートメントの行番号を参照しています...これは Select ステートメント全体です。As は Group By at にjobmtl.partnum AS 'mtlpart',あり、出てくる必要があります。

于 2013-01-08T19:35:53.270 に答える