在我的网站上,人们可以购买车辆零部件。我想为客户创建一份报告,让他们查看他们每月在该网站上花费了多少钱购买零部件,并允许他们按日期筛选。如果我要用SQL编写它,我会写成这样:
SELECT
v.id,
DATEPART(YEAR, o.order_date),
DATEPART(MONTH, o.order_date),
SUM(i.unit_price * i.quantity)
FROM vehicles v
join order_items i on v.id = i.truck_id
join orders o on o.order_id = i.order_id
WHERE v.customer_id = @CustomerId
AND o.order_date > @StartDate
AND o.order_date < @EndDate
GROUP BY DATEPART(YEAR, o.order_date), DATEPART(MONTH, o.order_date)
这个查询在NHibernate中是否可以作为Criteria查询呢?