以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  序号  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=178634)

--  作者:qazlinle6
--  发布时间:2022/7/13 9:25:00
--  序号
Sel5ect  {销进退账目}.日期,{销进退账目}.店名,{销进退账目}.对账品名,月初柜台余货数量,月初柜台余货金重,月初柜台余货标价,柜台余货数量,柜台余货金重,柜台余货标价,{销进退账目}.年,{销进退账目}.月,sum(数量) As [销售数量],sum(金重) As [销售金重],sum(标签价格) As [销售标签价格],Sum(Case When 退货进货=\'已进货\' Then 数据数量 Else 0 End) As [已进货数量],Sum(Case When 退货进货=\'已进货\' Then 数据金重 Else 0 End) As [已进货金重],Sum(Case When 退货进货=\'已进货\' Then 数据标签价格 Else 0 End) As [已进货标签价格],-Sum(Case When 退货进货=\'已退货\' Then 数据数量 Else 0 End) As [已退货数量],-Sum(Case When 退货进货=\'已退货\' Then 数据金重 Else 0 End) As [已退货金重],-Sum(Case When 退货进货=\'已退货\' Then 数据标签价格 Else 0 End) As [已退货标签价格] From (({销进退账目} Left JOIN {销售明细} ON {销售明细}.[日期] = {销进退账目}.[日期] And {销售明细}.[店名] = {销进退账目}.[店名] And {销售明细}.[对账品名] = {销进退账目}.[对账品名]) Left JOIN {进货退货} ON {进货退货}.[日期] = {销进退账目}.[日期] And {进货退货}.[店名] = {销进退账目}.[店名] And {进货退货}.[对账品名] = {销进退账目}.[对账品名]) Where {销进退账目}.店名=\'周六福(1)\' And {销进退账目}.年=\'2022\' And {销进退账目}.月=\'07\' And {销进退账目}.对账品名=\'2022\' Group By {销进退账目}.日期,{销进退账目}.店名,{销进退账目}.对账品名,月初柜台余货数量,月初柜台余货金重,月初柜台余货标价,柜台余货数量,柜台余货金重,柜台余货标价,{销进退账目}.年,{销进退账目}.月

这个什么加到上面去
Row_Number() Over(Order by {销进退账目}.日期 Desc) As 序号

--  作者:有点蓝
--  发布时间:2022/7/13 9:46:00
--  
Sel5ect  Row_Number() Over(Order by {销进退账目}.日期 Desc) As 序号, {销进退账目}.日期,{销进退账目}.店名

--  作者:qazlinle6
--  发布时间:2022/7/13 16:10:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:网页.txt



流水计算全部,显示只显示我要的月份

            For Each dr As DataRow In dt.Select("", "序号")加个条件


加这个条件{销进退账目}.店名=\'" & e.PostValues("店名") & "\' “& 年 &” “& 月 &”

--  作者:有点蓝
--  发布时间:2022/7/13 16:51:00
--  
For Each dr As DataRow In dt.Select("店名=\'" & e.PostValues("店名") & "\' ", "序号")
--  作者:qazlinle6
--  发布时间:2022/7/13 17:08:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq浏览器截图20220713170548.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:qq浏览器截图20220713170830.png
图片点击可在新窗口打开查看

为什么2022-06-11统计的跟我实际的不一样
[此贴子已经被作者于2022/7/13 17:08:58编辑过]

--  作者:有点蓝
--  发布时间:2022/7/13 17:13:00
--  
只能自己找问题了。减少数据量,简化sql进行调试
--  作者:qazlinle6
--  发布时间:2022/7/13 18:06:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq浏览器截图20220713180429.png
图片点击可在新窗口打开查看


没测岀来,是不是条件少了

--  作者:qazlinle6
--  发布时间:2022/7/13 21:48:00
--  
关联两个表就会统计算错
[此贴子已经被作者于2022/7/13 21:48:33编辑过]

--  作者:有点蓝
--  发布时间:2022/7/14 9:07:00
--  
关联是会重复统计的,比如下面语句
select a.编号,a.日期,sum(b.金额) as 金额 from a left join b on a.编号=b.编号 and a.日期=b.日期 group by a.编号,a.日期

假设a表有2条数据,b表有4条数据,关联后会产生2*4=8条数据,里面会有重复的数据,统计后肯定就不正确了。

应该先统计再关联,比如
select a.编号,a.日期,b.金额 from a left join (select 编号,日期,sum(金额) as 金额 from  b group by a.编号,a.日期) as b on a.编号=b.编号 and a.日期=b.日期

--  作者:qazlinle6
--  发布时间:2022/7/14 9:16:00
--  
\'Row_Number() Over(Order by {销进退账目}.日期 ) As 序号,{销进退账目}.日期,{销进退账目}.店名,{销进退账目}.做账签名,{销进退账目}.对账品名,月初柜台余货数量,月初柜台余货金重,月初柜台余货标价,柜台余货数量,柜台余货金重,柜台余货标价,{销进退账目}.年,{销进退账目}.月,sum(数量) As [已销售数量],sum(金重) As [已销售金重],sum(标签价格) As [已销售标价],Sum(Case When 退货进货=\'已进货\' Then 数据数量 Else 0 End) As [已进货数量],Sum(Case When 退货进货=\'已进货\' Then 数据金重 Else 0 End) As [已进货金重],Sum(Case When 退货进货=\'已进货\' Then 数据标签价格 Else 0 End) As [已进货标价],-Sum(Case When 退货进货=\'已退货\' Then 数据数量 Else 0 End) As [已退货数量],-Sum(Case When 退货进货=\'已退货\' Then 数据金重 Else 0 End) As [已退货金重],-Sum(Case When 退货进货=\'已退货\' Then 数据标签价格 Else 0 End) As [已退货标价] From (({销进退账目} Left JOIN {销售明细} ON {销售明细}.[日期] = {销进退账目}.[日期] And {销售明细}.[店名] = {销进退账目}.[店名] And {销售明细}.[对账品名] = {销进退账目}.[对账品名]) Left JOIN {进货退货} ON {进货退货}.[日期] = {销进退账目}.[日期] And {进货退货}.[店名] = {销进退账目}.[店名] And {进货退货}.[对账品名] = {销进退账目}.[对账品名]) Where {销进退账目}.店名=\'" & e.PostValues("店名") & "\'"& 对账品名 &" Group By {销进退账目}.日期,{销进退账目}.店名,{销进退账目}.对账品名,{销进退账目}.做账签名,月初柜台余货数量,月初柜台余货金重,月初柜台余货标价,柜台余货数量,柜台余货金重,柜台余货标价,{销进退账目}.年,{销进退账目}.月


我这个可以帮我弄一下不