私は、create文とinsert文を使用してデータを取り込んだデータベースを持っています。 WHERE句を持つSELECT文を記述しました。私が遭遇している問題は、私がこの声明を実行すると、データのいくつかが私が理解できない何らかの理由で繰り返されていることがわかったということです。Where句文データの繰り返し
これは私が実行しようとしている文です。
SELECT Customer_Contact, Customer.CustomerID, Ord.OrderID,ItemOrdered.BeltLength,ItemOrdered.Colour,
ItemOrdered.Quantity,Design.DesignStyle
FROM Customer, Ord, ItemOrdered,Design
WHERE Customer.CustomerID = Ord.CustomerID
and Customer.Customer_Contact = 'John Daley'
and Design.DesignStyle ='Flat-Engraved';
上記の文を作成するために使用したすべての関連コードが表示されます。 [データベース・コード] [1]
私は、次の形式でレイアウトされています:
SELECT Customer_Contact, Customer.CustomerID, Ord.OrderID,ItemOrdered.BeltLength,ItemOrdered.Colour,
ItemOrdered.Quantity,Design.DesignStyle
FROM Customer, Ord, ItemOrdered,Design
WHERE Customer.CustomerID = Ord.CustomerID and
ItemOrdered.OrderID = Ord.OrderID
and Customer.Customer_Contact = 'John Daley' and
Design.DesignStyle ='Flat-Engraved';
これは動作しますが、しかし、ときに私:
CREATE STATEMENT
INSERT INTO STATEMENT
句とは、次のようになりますどこに拡大ステートメントを実行すると、まったく同じ3つのレコードが表示されます。
SELECT Customer.Customer_Contact,
Customer.CustomerID,
Ord.OrderID,
ItemOrdered.BeltLength,
ItemOrdered.Colour,
ItemOrdered.Quantity,
Design.DesignStyle
FROM Customer,
Ord,
ItemOrdered,
BeltID
Design
WHERE Customer.CustomerID = Ord.CustomerID
AND Ord.OrderID = ItemOrdered.OrderID
AND Customer.Customer_Contact = 'John Daley'
AND Design.DesignStyle ='Flat-Engraved'
AND BeltID.DesignID = Design.DesignID;
上記の陳述は私に無効な識別子エラーを与えていますが、私はそれを理解できないようです。
where節が展開され、上記のようになりました。私はフィールドを編集しました。 –
user532339:参加しているデザインテーブルはどうですか?キーは他のテーブルの外部キーとして存在しません。 –
デザインテーブルが結合されます。それはBeltIDに結合され、次のリンクはそれらがどのように結合されているかを示しています。 http://pastebin.com/rrCr9M46 –