SELECT DISTINCT Customers.CompanyName AS Customer, Products.ProductName, Categories.CategoryName, [OrderDetails].Quantity, Suppliers.CompanyName AS Supplier, Shippers.CompanyName AS Shipper,
Employees.FirstName AS Employee, Region.RegionDescription
FROM Categories INNER JOIN
Products WITH (INDEX(PK_Products)) ON Categories.CategoryID = Products.CategoryID INNER JOIN
EmployeeTerritories INNER JOIN
Employees WITH (INDEX(PK_Employees)) ON EmployeeTerritories.EmployeeID = Employees.EmployeeID INNER JOIN
Orders ON Employees.EmployeeID = Orders.EmployeeID INNER JOIN
Customers WITH (INDEX(PK_Customers)) ON Orders.CustomerID = Customers.CustomerID INNER JOIN
[Order Details] WITH (INDEX(PK_Order_Details)) ON Orders.OrderID = [Order Details].OrderID
ON Products.ProductID = [Order Details].ProductID INNER JOIN
Shippers WITH (INDEX(PK_Shippers)) ON Orders.ShipVia = Shippers.ShipperID INNER JOIN
Suppliers WITH (INDEX(PK_Suppliers)) ON Products.SupplierID = Suppliers.SupplierID INNER JOIN
Territories WITH (INDEX(PK_Territories)) ON EmployeeTerritories.TerritoryID = Territories.TerritoryID INNER JOIN
Region WITH (INDEX(PK_Region)) ON Territories.RegionID = Region.RegionID
WHERE (Customers.CompanyName > N'D') AND (Region.RegionDescription <> N'Western')
ORDER BY Customer, ProductName
The above query is on Northwind database. My requirement is that I want an optimized scenario for the above case with a proper reasoning for the approach taken.