У меня есть база данных, которая была заполнена некоторыми данными, используя create и insert в операторах.Я написал инструкцию 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]
Я выложил его в следующем формате:
CREATE STATEMENT
INSERT INTO STATEMENT
Расширена фраза 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
ItemOrdered.OrderID = Ord.OrderID
and Customer.Customer_Contact = 'John Daley' and
Design.DesignStyle ='Flat-Engraved';
Это работает, однако, когда я запускаю оператор, он вызывает 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;
Вышеприведенное утверждение дает мне ошибку неверного идентификатора, которую я, кажется, не понимаю, почему?