DECLARE @t TABLE(LSWLDW_WLDWBH VARCHAR(20),LSWLDW_DWMC VARCHAR(20),RouteCode VARCHAR(10),RouteName VARCHAR(20),NAME VARCHAR(20),DSFXLBJD_HWLX VARCHAR(10)
,CYDJ DECIMAL(14,2),QYDJ DECIMAL(14,2),JSDJ DECIMAL(14,2),TJDJ DECIMAL(14,2),ZCTJDJ DECIMAL(14,2),ZCDJ DECIMAL(14,2),JT DECIMAL(14,2),DCJT DECIMAL(14,2) )
INSERT INTO @t(LSWLDW_WLDWBH,LSWLDW_DWMC,RouteCode,RouteName,NAME,DSFXLBJD_HWLX,CYDJ,QYDJ,JSDJ,TJDJ,ZCTJDJ,ZCDJ,JT,DCJT)
SELECT d.LSWLDW_WLDWBH,d.LSWLDW_DWMC,b.RouteCode,b.RouteName,c.NAME
,CASE WHEN a.DSFXLBJD_HWLX = '0' THEN '重貨' ELSE '泡貨' END AS DSFXLBJD_HWLX
,CAST(ISNULL(a.DSFXLBJD_CYDJ,0) AS DECIMAL(20,4)) AS CYDJ
,CAST(ISNULL(a.DSFXLBJD_QYDJ,0) AS DECIMAL(20,4)) AS QYDJ
,CAST(ISNULL(a.DSFXLBJD_JSDJ,0) AS DECIMAL(20,4)) AS JSDJ
,CAST(ISNULL(a.DSFXLBJD_TJDJ,0) AS DECIMAL(20,4)) AS TJDJ
,CAST(ISNULL(a.DSFXLBJD_ZCTJDJ,0) AS DECIMAL(20,4)) AS ZCTJDJ
,CAST(ISNULL(a.DSFXLBJD_ZCDJ,0) AS DECIMAL(20,4)) AS ZCDJ
,CAST(ISNULL(a.DSFXLBJD_JT,0) AS DECIMAL(20,4)) AS JT
,CAST(ISNULL(a.DSFXLBJD_DCJT,0) AS DECIMAL(20,4)) AS DCJT
FROM DSFXLBJD AS a
INNER JOIN TspRoutes AS b ON a.DSFXLBJD_XL = b.RouteID
INNER JOIN CODEITEMS AS c ON a.DSFXLBJD_YSFS = c.CODE AND c.SetID='A053'
INNER JOIN LSWLDW AS d ON a.DSFXLBJD_CYR = d.LSWLDW_WLDWBH
INNER JOIN Organizations AS e ON a.DSFXLBJD_YSZZ = e.OrganizationID
WHERE a.DSFXLBJD_CYR='CY000002' AND a.DSFXLBJD_GSID ='01001'
ORDER BY b.RouteName,a.DSFXLBJD_HWLX
SELECT a.*
FROM @t AS a
INNER JOIN (
SELECT RouteName,COUNT(*) AS num
FROM @t
GROUP BY RouteName
HAVING COUNT(*) < 2 OR COUNT(*) > 2
) AS b ON a.RouteName = b.RouteName