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
查看全文
相关阅读:
javaweb
反射 day1
JDBC-day1
总结
day5
day4
day3
18.10.17 考试总结
洛谷P2172 [bzoj] 2150 部落战争
18.10.15 考试总结
原文地址:https://www.cnblogs.com/pingkeke/p/547985.html
最新文章
Android RecyclerView 实现支付宝首页效果
拓展 Android 原生 CountDownTimer 倒计时
Android 6.0 权限申请辅助 ----PermissionsHelper
Android EditText悬浮在输入法之上
## Android 6.0 权限申请 ##
Android 透明度百分比对应的 十六进制
自定义 checkbox 新玩法 ?
Android RatingBar 自定义样式
Android 解决方法数 65536 (65k) 限制
com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK assets/com.xx.xx
热门文章
SharedPreferences.Editor 的apply()与commit()方法的区别
Android 使用Font Awesome 显示文字图标
状态栏 a.getBoolean(1, false) 报错
WindowManager 实现悬浮窗 详解
在线程序员 计算器 (中文)
开源协议
Eclipse 工程迁移到 Android Studio
js_dom
js
浮动原理
Copyright © 2011-2022 走看看