2011-06-30 14 views
0

これは完全にこの問題に取り組んでいます。私は他の質問を見ましたが、これに答えた人が見つかりませんでした(とにかく私が理解できる)。私はクエリで次のCTEを持っていますが、MaxUserIDが "無効な列名 'MaxUserID'"エラーで使用されている3か所で赤くなっています。もしそれが役に立つなら、それが表すはずの列はintです。何かアドバイス?CTE無効な列名

私は2008年

;with TotalCount(TotalCount,MaxUserID) 

as 

(
    Select ISNULL(count(distinct uCPR.HeaderID), 0) as TotalCount, MaxUserID 
      from ClientFeedback.dbo.UnitCountCPR uCPR 
      where 
       uCPR.DHDate between @StartDate and @EndDateMod 
       and uCPR.TargetID in (@StatusID) 
       and uCPR.UserID = MaxUserID 
       and uCPR.DTStamp between @StartDate and @EndDateMod 
       and uCPR.ClientID in (@ClientID) 
     group by MaxUserID 

) 
+2

テーブルのUnitCountCPRにMaxUserID列が実際に存在しますか? –

+0

実行してみましたか?場合によっては、インテリセンス(赤い下線を引く)がdb構造と同期していないこともあります。 'CTRL + SHIFT + R 'で手動で更新することができます – JNK

+0

MaxUserIDはテーブルに存在しません。 私はそれを実行しようとしました、私にエラーを与えます。私はintellisenseをリフレッシュしなかった。 – lonehunter01

答えて

1

があなたのインテリセンスのキャッシュを更新し、coluumnsを選ぶためにあなたのテーブルの別名を使用するSQL Serverを使用しています。また、カウントがnullになることはありません、あなたのIsNullは良いことをしていません。そして、あなたが等価の代わりにを使用している理由はありますか?

+0

私は明日に入るときにそれを試してみるが、私は14時間それにあった、それは合理的だと思う。私はSSRSレポートからマルチセレクトパラメータとして来ているので、必要です。私はisnullを取り除くだろうが、助けてくれてありがとう。 – lonehunter01