2017-02-04 9 views
0

テーブルからドロップダウンボックスを挿入するビューを作成するのに苦労します。MYSQL&はステートメントではありません

ドロップダウンにはまだ作成されていないアイテムのみが表示されます。私の場合、農場コストプログラムのフィールド。

$

CREATE VIEW [dbo].[cmbPopulateFieldsnotcosted] 
    AS SELECT 
    fieldID, 
    fieldName, 
    fieldLocation, 
    fieldSize, 
    fieldHistory 
    FROM [fieldDetails] 
    where fieldDetails.fieldID not in fieldCosts.fieldID 
    inner join fieldCosts.fieldID = fieldDetails.fieldID 

$

enter image description here enter image description here

二つの画像は、私が取得していますエラーを示しています。

ご協力いただければ幸いです。

さらに詳しい情報を提供するために、既に費用が追加されているフィールドがある場合、そのコストを追加することはできません。ちょうどそれを更新して、このビューを書いて、私がこれを行えるようにしたい。

答えて

0

あなたが提供しなければならない句と配列(または副選択の結果)で使用している場合は

が、あなたの場合には、あなたが参加するので、あなたが使用する必要がありますを使用している!=

CREATE VIEW [dbo].[cmbPopulateFieldsnotcosted] 
     AS SELECT 
     fieldID, 
     fieldName, 
     fieldLocation, 
     fieldSize, 
     fieldHistory 
     FROM [fieldDetails] 
     where fieldDetails.fieldID != fieldCosts.fieldID 
     inner join fieldCosts.fieldID = fieldDetails.fieldID 

(理由

)SQLServerのようだ(..適切かmysqlのではありません括弧[]は、この場合のセットは句の中で参加していないで管理されている)

とにかくあなたが表記法を使用している広場で

+0

こんにちは、 乾杯を。 申し訳ありませんがVS2015を介してmysqlを使用して、右の痛みを言っている必要があります。 私はプログラムでも私の意見を保存することができないようです。 ビューを作成すると、角括弧が表示されます。 – Andy

0

これはMySQLに関する質問ではありません。これはMSSQLに関する質問です。

はこれを試してみてください:

CREATE VIEW [dbo].[cmbPopulateFieldsnotcosted] 
AS SELECT 
fieldID, 
fieldName, 
fieldLocation, 
fieldSize, 
fieldHistory 
FROM [fieldDetails] 
WHERE NOT EXISTS (SELECT 1 
        FROM [fieldCosts] 
        WHERE fieldDetails.fieldID = fieldCosts.fieldID) 

ます。また、外部結合を使用できます。そのため

CREATE VIEW [dbo].[cmbPopulateFieldsnotcosted] 
AS SELECT 
fieldID, 
fieldName, 
fieldLocation, 
fieldSize, 
fieldHistory 
FROM [fieldDetails] 
LEFT OUTER JOIN [fieldCosts] ON (fieldDetails.fieldID = fieldCosts.fieldID) 
WHERE fieldCosts.fieldID IS NULL 
関連する問題