【发布时间】:2015-06-17 03:10:52
【问题描述】:
我在 asp.net 中使用以下 sql 查询以 Group by 三个表使用 inner join :
SELECT tblVendorItem.Name,
tblEventItem.Quantity * tblEventItem.Price AS 'Sale',
tblEventService.ServiceDate
FROM tblEventService
INNER JOIN tblEventItem ON
tblEventService.EventServiceID = tblEventItem.EventServiceID
INNER JOIN tblVendorItem ON
tblEventItem.VendorItemID = tblVendorItem.VendorItemID
INNER JOIN tblVendor ON
tblVendorItem.VendorID = tblVendor.VendorID
WHERE (tblEventService.VendorID = 1)
AND (tblEventService.ServiceDate BETWEEN '20-04-2015 00:00:00' AND '23-04-2015 00:00:00')
GROUP BY
tblVendorItem.Name, tblEventItem.Quantity, tblEventItem.Price, tblEventService.ServiceDate
这里,VendorID 和 Dates 是静态的。查询已解析,但在执行时,显示以下错误:
我已经检查了 model 类和 table 中的数据类型,它显示了 datetime。
谁能告诉我查询中有什么问题或者如何解决这个错误?
【问题讨论】:
-
in where condition :convert(VARCHAR(20),tblEventService.ServiceDate,103) BETWEEN (convert(VARCHAR(20),'20-04-2015 00:00:00',103) AND (转换(VARCHAR(20),'23-04-2015 00:00:00',103))
标签: c# mysql sql-server datetime