akhter86 Ответов: 2

Как просмотреть все детали заказа на продажу с помощью SQL statment.?


у меня есть таблица customer(CustomerID,CustomerName),,, Item_master(Item_code,Item_Name)
sales_Order(orderno, "кодклиента") и "заказано" (Orderno,item_code,кол-во)


мне нужен sql - запрос или представление, в котором будут отображаться все orderdetails.
любить

orderno|CustomerName|Item_Name|qty

пожалуйста, проводите...

Что я уже пробовал:

select SalesOrder.OrderNo,ItemMasterFile.Descriptionitem,
OrderDetail.orderqty,Customer.CustomerName from OrderDetail 
inner join ItemMasterFile on ItemMasterFile.CodeItem=OrderDetail.CodeItem
inner join Customer on Customer.CustomerID=SalesOrder.CustomerID

CHill60

Что не так с кодом, который вы пробовали?

2 Ответов

Рейтинг:
17

CHill60

Вы пропустили соединение с таблицей SalesOrder, например.

select S.OrderNo,I.Item_Name,OD.qty,C.CustomerName 
from sales_Order S
inner join orderdetails OD ON OD.Orderno = S.orderno
inner join Item_master I on I.Item_code=OD.Item_code
inner join Customer C on C.CustomerID = S.customerId
Обратите внимание, что имена таблиц и столбцов в моем решении-это те, которые вы упомянули в своем описании, а не те, которые вы использовали в своем коде. Я не был склонен возвращаться и менять их.


Maciej Los

5ed!

CHill60

Спасибо Мацей

Рейтинг:
1

MadMyche

Это значительно облегчает устранение неполадок, Если вы применяете небольшое форматирование к своему запросу и используете такой инструмент, как Sql Studio красная подкладка запрос из-за каких - либо ошибок. Особенно если вы попытаетесь запустить его

select SalesOrder.OrderNo
,      ItemMasterFile.Descriptionitem
,      OrderDetail.orderqty
,      Customer.CustomerName
from OrderDetail 
inner join ItemMasterFile on ItemMasterFile.CodeItem   =OrderDetail.CodeItem
inner join Customer       on Customer.CustomerID       =SalesOrder.CustomerID
Первое, что у вас есть в списке выбора, - это SalesOrder.OrderNo, однако, salesorder, которая ни от источника, ни он зарегистрирован.

Еще один совет, который я рекомендую использовать псевдонимы для имен таблиц это также помогает в удобочитаемости
SELECT  s.OrderNo
  ,    	i.Descriptionitem
  ,     d.Qty
  ,     c.CustomerName
FROM        Sales_Order  s				
INNER JOIN  OrderDetail  d ON s.OrderNo    = d.OrderNo
INNER JOIN  Item_master  i ON d.Item_code  = i.Item_code
INNER JOIN  customer     c ON c.CustomerID = s.CustomerID