实际上,我在vb.net上使用GridView。这是数据源中的sql。
SELECT SE.shipperID
, SE.sName
, SE.consigneeID
, SE.conName
, SE.agentID
, SE.aName
, SEDetail.bolId
, SE.masterBOLno
, SE.coloaderBOLno
, SE.NumOBOL
, SE.polName
, SE.podName
, CONVERT(VARCHAR ,SE.onboardDate ,111)
, SUM(SEDetail.quantity)
, SUM(SEDetail.totalSize)
, SUM(SEDetail.totalWeight)
FROM SE
INNER JOIN SEDetail ON SE.id = SEDetail.bolId
WHERE SE.id = SEDetail.bolId
GROUP BY SE.shipperID, SE.sName, SE.consigneeID, SE.conName, SE.agentID,
SE.aName, SE.masterBOLno, SE.coloaderBOLno, SE.NumOBOL, SEDetail.bolId,
SE.polName, SE.podName, SE.onboardDate
我想使用TemplateField添加3列,但GridView不能使用多个数据源
column 1. count(SEDetail.containerId) (where b.SEDetail.containerId between 1 and 5 )
column 2. count(SEDetail.containerId) (where b.SEDetail.containerId between 6 and 10 )
column 3. count(SEDetail.containerId) (where b.SEDetail.containerId = 11 )
那么,如何使用临时表或其他方式将一组语句分组。
答案 0 :(得分:0)
不确定您使用的是什么样的SQL,但是不能将以下内容添加到select语句中:
SUM(CASE WHEN b.SEDetail.containerId BETWEEN 1 AND 5
THEN 1 ELSE 0 END) AS column1
SUM(CASE WHEN b.SEDetail.containerId BETWEEN 6 AND 10
THEN 1 ELSE 0 END) AS column2
SUM(CASE WHEN b.SEDetail.containerId = 11
THEN 1 ELSE 0 END) AS column3