私は次のテーブルを持っています:
- 注文
- 製品
- ジョイントテーブルとしてのOrderDetails。
製品に接続されているCategoriesテーブルもあります。CategoryIDは、Productsの外部テーブルです。
1997年から1998年までの注文年、四半期、C文字で始まるカテゴリ名とSale(UDF)を含むテーブルを取得しようとしています。これが私が試したことです:
Select YEAR(o.OrderDate) AS "Year", DATENAME(Quarter, o.OrderDate) AS "Qtr",
c.CategoryName,
dbo.SaleAfterDiscount(od.UnitPrice, od.Quantity, od.Discount) AS "Sale"
From Orders o, [Order Details] od, Categories c, Products p
WHERE (YEAR(o.OrderDate)='1997'OR YEAR(o.OrderDate)='1998')
AND c.CategoryName LIKE 'c%'
AND od.OrderID = o.OrderID
AND od.ProductID = p.ProductID
AND c.CategoryID = p.CategoryID
しかし、私はたくさんの結果を得ます。それらをグループ化するか、クエリを修正して正しい答えを得るにはどうすればよいですか?