zoukankan
html css js c++ java
SP笔记:交叉实现七行并成一行
set
ANSI_NULLS
ON
set
QUOTED_IDENTIFIER
ON
go
--
=============================================
--
Author: CHENQP
--
Create date: 9:37 2006-10-30
--
Description: 获取挑选库存货位信息查询、用于领导决策系统
--
交叉实现七行并成一行
--
=============================================
ALTER
PROCEDURE
[
dbo
]
.
[
usp_TBManagerQuery_GetResortedTLWarehouse
]
@strWhere
varchar
(
1500
)
=
''
--
查询条件 (注意: 不要加 where)
AS
BEGIN
SET
NOCOUNT
ON
;
declare
@strSQL
varchar
(
5000
)
--
主语句
Create
Table
#TMPTABLE_1(IDD
int
identity
(
1
,
1
),
V_GoodsPlace
VARCHAR
(
50
) ,I_Package
INT
,
N_Weight
DECIMAL
(
18
,
3
),V_OutGrade
VARCHAR
(
50
),
V_Customer
VARCHAR
(
50
),V_PurchaseType
VARCHAR
(
50
),V_AreaName
VARCHAR
(
50
))
if
@strWhere
!=
''
set
@strSQL
=
'
INSERT INTO #TMPTABLE_1
SELECT V_GoodsPlace,
COUNT(*) as I_Package,
SUM(N_Weight) as N_Weight,
V_OutGrade,
V_Customer,
V_PurchaseType,
dbo.FUN_GetProductionAreaName(I_OutOriginID) AS V_AreaName
FROM V_NPick_StorageStream where
'
+
@strWhere
+
'
GROUP BY V_GoodsPlace,V_OutGrade,V_Customer,V_PurchaseType,I_OutOriginID
ORDER BY V_GoodsPlace
'
else
begin
set
@strSQL
=
'
INSERT INTO #TMPTABLE_1
SELECT V_GoodsPlace,
COUNT(*) as I_Package,
SUM(N_Weight) as N_Weight,
V_OutGrade,
V_Customer,
V_PurchaseType,
dbo.FUN_GetProductionAreaName(I_OutOriginID) AS V_AreaName
FROM V_NPick_StorageStream
GROUP BY V_GoodsPlace,V_OutGrade,V_Customer,V_PurchaseType,I_OutOriginID
ORDER BY V_GoodsPlace
'
end
execute
(
@strSQL
)
--
货位小计信息
SELECT
COUNT
(
*
)
as
GoodsPlaceCnt,
SUM
(I_Package)
as
PackageSum,
SUM
(N_Weight)
as
WeightSum
FROM
#TMPTABLE_1
--
实现交叉功能
--
Powred by:CHENQP
--
Commit Date:11:22 2006-10-30
SELECT
V_GoodsPlaceA
=
max
(
case
id
%
7
when
0
then
V_GoodsPlace
end
),
I_PackageA
=
max
(
case
id
%
7
when
0
then
I_Package
end
),
N_WeightA
=
max
(
case
id
%
7
when
0
then
N_Weight
end
),
V_OutGradeA
=
max
(
case
id
%
7
when
0
then
V_OutGrade
end
),
V_CustomerA
=
max
(
case
id
%
7
when
0
then
V_Customer
end
),
V_PurchaseTypeA
=
max
(
case
id
%
7
when
0
then
V_PurchaseType
end
),
V_AreaNameA
=
max
(
case
id
%
7
when
0
then
V_AreaName
end
),
V_GoodsPlaceB
=
max
(
case
id
%
7
when
1
then
V_GoodsPlace
end
),
I_PackageB
=
max
(
case
id
%
7
when
1
then
I_Package
end
),
N_WeightB
=
max
(
case
id
%
7
when
1
then
N_Weight
end
),
V_OutGradeB
=
max
(
case
id
%
7
when
1
then
V_OutGrade
end
),
V_CustomerB
=
max
(
case
id
%
7
when
1
then
V_Customer
end
),
V_PurchaseTypeB
=
max
(
case
id
%
7
when
1
then
V_PurchaseType
end
),
V_AreaNameB
=
max
(
case
id
%
7
when
1
then
V_AreaName
end
),
V_GoodsPlaceC
=
max
(
case
id
%
7
when
2
then
V_GoodsPlace
end
),
I_PackageC
=
max
(
case
id
%
7
when
2
then
I_Package
end
),
N_WeightC
=
max
(
case
id
%
7
when
2
then
N_Weight
end
),
V_OutGradeC
=
max
(
case
id
%
7
when
2
then
V_OutGrade
end
),
V_CustomerC
=
max
(
case
id
%
7
when
2
then
V_Customer
end
),
V_PurchaseTypeC
=
max
(
case
id
%
7
when
2
then
V_PurchaseType
end
),
V_AreaNameC
=
max
(
case
id
%
7
when
2
then
V_AreaName
end
),
V_GoodsPlaceD
=
max
(
case
id
%
7
when
3
then
V_GoodsPlace
end
),
I_PackageD
=
max
(
case
id
%
7
when
3
then
I_Package
end
),
N_WeightD
=
max
(
case
id
%
7
when
3
then
N_Weight
end
),
V_OutGradeD
=
max
(
case
id
%
7
when
3
then
V_OutGrade
end
),
V_CustomerD
=
max
(
case
id
%
7
when
3
then
V_Customer
end
),
V_PurchaseTypeD
=
max
(
case
id
%
7
when
3
then
V_PurchaseType
end
),
V_AreaNameD
=
max
(
case
id
%
7
when
3
then
V_AreaName
end
),
V_GoodsPlaceE
=
max
(
case
id
%
7
when
4
then
V_GoodsPlace
end
),
I_PackageE
=
max
(
case
id
%
7
when
4
then
I_Package
end
),
N_WeightE
=
max
(
case
id
%
7
when
4
then
N_Weight
end
),
V_OutGradeE
=
max
(
case
id
%
7
when
4
then
V_OutGrade
end
),
V_CustomerE
=
max
(
case
id
%
7
when
4
then
V_Customer
end
),
V_PurchaseTypeE
=
max
(
case
id
%
7
when
4
then
V_PurchaseType
end
),
V_AreaNameE
=
max
(
case
id
%
7
when
4
then
V_AreaName
end
),
V_GoodsPlaceF
=
max
(
case
id
%
7
when
5
then
V_GoodsPlace
end
),
I_PackageF
=
max
(
case
id
%
7
when
5
then
I_Package
end
),
N_WeightF
=
max
(
case
id
%
7
when
5
then
N_Weight
end
),
V_OutGradeF
=
max
(
case
id
%
7
when
5
then
V_OutGrade
end
),
V_CustomerF
=
max
(
case
id
%
7
when
5
then
V_Customer
end
),
V_PurchaseTypeF
=
max
(
case
id
%
7
when
5
then
V_PurchaseType
end
),
V_AreaNameF
=
max
(
case
id
%
7
when
5
then
V_AreaName
end
),
V_GoodsPlaceG
=
max
(
case
id
%
7
when
6
then
V_GoodsPlace
end
),
I_PackageG
=
max
(
case
id
%
7
when
6
then
I_Package
end
),
N_WeightG
=
max
(
case
id
%
7
when
6
then
N_Weight
end
),
V_OutGradeG
=
max
(
case
id
%
7
when
6
then
V_OutGrade
end
),
V_CustomerG
=
max
(
case
id
%
7
when
6
then
V_Customer
end
),
V_PurchaseTypeG
=
max
(
case
id
%
7
when
6
then
V_PurchaseType
end
),
V_AreaNameG
=
max
(
case
id
%
7
when
6
then
V_AreaName
end
)
FROM
(
SELECT
Top
100000
*
,
(
SELECT
COUNT
(
*
)
FROM
#TMPTABLE_1
WHERE
IDD
<=
a.IDD)
AS
id
FROM
#TMPTABLE_1 a
ORDER
BY
V_GoodsPlace,I_Package ) b
GROUP
BY
(b.id
-
1
)
/
7
ORDER
BY
(b.id
-
1
)
/
7
END
查看全文
相关阅读:
KVM(Keyboard、Video、Mouse)
javascript valueof
javascript的typeof的返回值
javascript的===和==
WGestures全局鼠标手势工具
向win+x快捷目录添加功能
好用的影子系统软件
备份任务栏
修改多个调用提示最小值_改变多选右键菜单
执行Windows Update更新
原文地址:https://www.cnblogs.com/pingkeke/p/547985.html
最新文章
ImageUploadAssist--ImageHelper
ImageUploadAssist--Biz_UploadImageBase
ImageUploadAssist--Biz_UploadImage
ImageUploadAssist——Interface
ImageUploadAssist--DATA
扩展DateTime类型的ToString
【XLL API 函数】xlSheetId
【XLL API 函数】xlSet
【XLL API 函数】xlGetName
【XLL API 函数】 xlGetInst
热门文章
【XLL API 函数】xlGetHwnd
【XLL API 函数】xlGetBinaryName
【XLL API 函数】 xlFree
【XLL API 函数】 xlDefineBinaryName
【XLL API 函数】xlCoerce
【XLL API 函数】xlAbort
创业报告架构
XenServer 主机池
天线
KVM虚拟机
Copyright © 2011-2022 走看看