2012-05-04 8 views
-4

をfloatにnvarchar型に変換することはできませんクエリはこれです:今、私はNEXT_ONSITE case文の部分をコメントしているSQLエラー - マルチパート識別子はバインドすることはできない、と私はマルチパート識別子A.fieldnameが</p> </blockquote> <p>をバインドすることができない私にエラー</p> <blockquote> <p>を与えるクエリを持って

SELECT DISTINCT 
    A.FYEARNAME, A.FQUARTER, A.FMONTHNAME, A.FWEEK, A.PRODUCT_DESC,  
    A.BRAND_DESC, A.TYPE_DESC, A.CUSTOMER_TYPE, A.DPS_TYPE, A.PPD_PARTS, 
    A.DISPATCHES, A.REPEATS, A.WITHIN_1HR, 
    'INIT_ONSITE' = CASE 
         WHEN (C.ONSITE = 'Y') THEN 'ONSITE' 
         ELSE 'NOT ONSITE' 
        END 
    -- 'NEXT_ONSITE' = CASE 
    --      WHEN (D.ONSITE = 'Y' AND B.PPD_PARTS = 0) THEN 'ONSITE WITH NO PARTS' 
    --      ELSE 'N' 
    --     END 
FROM 
    dbo.RD_Noise_FY13 A 
LEFT OUTER JOIN 
    dbo.RD_Noise_FY13 B ON A.NEXTDPS = B.DPSNUM 
INNER JOIN 
    COMMON.DBO.TLKP_DPSTYPES C ON A.DPS_TYPE = C.DPSTYPE 
--INNER JOIN 
-- COMMON.DBO.TLKP_DPSTYPES D ON B.DPS_TYPE = D.DPSTYPE 

...しかし、私がいることをコメント解除した場合、それはエラーを出します

をfloatにnvarchar型に変換できません、あなたはこれらの2つのエラーで私を助けてくださいことはできますか?私は同様のクエリを実行しているが、このような問題は一度もない。

ありがとうございました。

+0

フィールド名とは何ですか? – JonH

+1

** **データベースシステムとバージョンは何ですか? ** SQL **は、多くのデータベースシステムで使用されている言語で、SQLは**データベース製品ではありません。 –

+0

どこでエラーが発生していますか? SSMSでクエリを実行すると、それとも別の場所? –

答えて

1

ここに欠けているものがたくさんあります:

  • Fieldnameは何?
  • 残りのクエリはどこにありますか?あなたのコメントアウトセクションでは、D.ONSITEに言及しているが、何のD表には、私はあなたの代わりにあなたが私たちに表示されていないセクション内の実際のフィールド名のFieldnameを参照推測している第一のために、あなたの投稿をFROMセクション

ではありません。

D.ONSITEfloat?正確な答えを得るためには、データ型を知る必要があります。

+0

すべてのフィールドについて - 「マルチパート識別子がバインドされていない」というメッセージが表示されているので、「fieldname」を汎用用語として使用します。私は私のSQLコードの最後の行をチェックする場合、私はテーブルDのSQLもコメントしている。だから、私はそれらのすべてのコメントを解除する - それは私に "nvarcharを浮動小数点に変換することはできません"エラーを与える - ONSITE値は "Y"または "N"のいずれかです - それはどのようにフロートすることができますか? – user1265018

+0

OKですので、テーブル構造と項目タイプも転記する必要があります。あなたが私たちに言っていないことが起こっている。 – JNK

関連する問題