select Products.prodname, sum( billdetail.Qty) as qty,BillDetail.rate,
sum(billdetail.amt) as Amt from billdetail
inner join products
on products.prodid = billdetail.prodid
inner join category
on category.catid = products.catid
inner join billmaster
on billmaster.BillID = BillDetail.BillID
where billmaster.billdate between 1/08/2017 and 19/09/2017 and CatName =
'chicken'
group by prodname,rate
我的问题是,当我包含日期参数时,它会停止工作。我怎么能包括它们?
答案 0 :(得分:1)
首先,字符串文字的日期必须是单引号 - ,其次,我建议始终使用YYYYMMDD
的ISO-8601格式适用于任何语言/区域设置(其他格式取决于当前语言/区域设置,可能在某些系统上有效,但在其他系统上有效)。
所以试试:
WHERE
billmaster.billdate BETWEEN '20170801' AND '20170919'
答案 1 :(得分:0)
日期和字符串文字应该包含在两个''
:
select
Products.prodname,
sum( billdetail.Qty) as qty,
BillDetail.rate,
sum(billdetail.amt) as Amt
from billdetail
inner join products on products.prodid = billdetail.prodid
inner join category on category.catid = products.catid
inner join billmaster on billmaster.BillID = BillDetail.BillID
where billmaster.billdate between '20170801' and '20170919'
and CatName = 'chicken'
group by prodname,rate;
此外,建议使用iso标准格式来格式化这些日期的值。值。
答案 2 :(得分:0)
日期需要''=''2017年1月8日'和'19 / 09/2017'
你还需要加入前的子句