2017-03-17 17 views
-2

私はプロシージャを格納するためにSQLサーバーを使用しています。StoredProcedure:キーワード 'INNER'の近くの構文が正しくありません

私は、 "キーワードの近くに不正な構文は、 'INNER'"

と、次は私のクエリでエラーに

が直面している:

set @SQL= 'select pushto as MSISDN,pushprice as Price,pushdate as DateTime,pushtext as Message from '[email protected]+' WITH (NOLOCK) WHERE '[email protected] + @scodelist+ @clientlist + @piclist +' INNER JOIN INAPremium..INA_Keyword K on R.keyid = K.keyid WHERE '[email protected] 
+ @scodelist+ @clientlist + @piclist + @DNType + @pkeywordlist + @seckeywordlist +' order by pushdate desc' 

はあなたのすべての助け手が必要です。 ありがとうございます。

+1

'それはJOIN's'と 'FROM'のすべての後に来る必要がありWHERE'句と。 –

+0

使用しているdbmsにタグを付けます。そのコードは製品固有です! – jarlh

答えて

0

投稿クエリが間違っています。あなたはの前にWHEREを使用しましたが、これは実際には別の方法で行うべきです。また、あなたが

from '[email protected]+' WITH (NOLOCK) 
WHERE '[email protected] + @scodelist+ @clientlist + @piclist +' 
INNER JOIN INAPremium..INA_Keyword K on R.keyid = K.keyid 

from '[email protected]+' WITH (NOLOCK)  
INNER JOIN INAPremium..INA_Keyword K on R.keyid = K.keyid 
WHERE '[email protected] + @scodelist+ @clientlist + @piclist +' 
0

あなた構文であるべき複数のWHERE句を持たfrom ... inner join ... whereでなければなりません。そのような

何か:

set @SQL= 'select pushto as MSISDN,pushprice as Price,pushdate as DateTime,pushtext as Message 
from '[email protected]+' WITH (NOLOCK) + 
' INNER JOIN INAPremium..INA_Keyword K on R.keyid = K.keyid 
WHERE '[email protected] + 
+ @scodelist+ @clientlist + @piclist + @DNType + @pkeywordlist + @seckeywordlist +' order by pushdate desc' 
0

私の観点から、それは構文エラーです。

INNER JOINの後にWITH(NOLOCK)秒後に1回、WHEREを二重にします。

このコードを試してください:あなたは一つだけを持つことができます

set @SQL= ' 
select 
    pushto as MSISDN, 
    pushprice as Price, 
    pushdate as DateTime, 
    pushtext as Message 
    from '[email protected]+' 
    WITH (NOLOCK) 
    INNER JOIN INAPremium..INA_Keyword K on R.keyid = K.keyid 
    WHERE '[email protected]+ @scodelist+ @clientlist + @piclist + @DNType + @pkeywordlist + @seckeywordlist +' 
    order by pushdate desc' 
関連する問題