以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  很简单,可惜我水平不够,求助中  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=8903)

--  作者:小狐
--  发布时间:2010/12/23 11:58:00
--  很简单,可惜我水平不够,求助中

出库表:       客户,出库单号,日期
出库明细表: 出库单号,产品

生成表:
客户,产品,日期(
要求生成:每个客户订购的每一种产品最后出库日期的sql公式:),

当然后面还可以做到指定到一个想要查询的产品

 


--  作者:狐狸爸爸
--  发布时间:2010/12/23 12:21:00
--  

最好做好这两个表,输入一点数据后传上来。


--  作者:mr725
--  发布时间:2010/12/23 12:28:00
--  
http://www.foxtable.com/dispbbs.asp?boardid=2&Id=8899  这里三楼的不是你的吗,水平一流了,我看半天没明白sql语句。                图片点击可在新窗口打开查看
--  作者:mr725
--  发布时间:2010/12/23 13:39:00
--  

画瓢一个:

SELECT TOP 1 {出库明细表}.产品,{出库表}.客户,{出库表}.出库单号,{出库表}.日期 from {出库表} inner jion {出库明细表} on {出库表}.出库单号 = {出库明细表}.出库单号 ORDER BY {出库表}.日期 DESC


--  作者:小狐
--  发布时间:2010/12/23 14:29:00
--  

出库表:  
出库单号 日期       客户
1     2010-10-11  A
2     2010-12-11  A
3     2010-10-11  B

 

出库明细:关联列为出库单号  
出库单号 产品 数量
1          一    10
1          二    10
2          一    10
3          一    10  
3          二    10  

 

第一步要得到每个客户每个产品的最后订购日期:    
出库单号 客户 产品 最后订购日期 订购数量
2          A      一      2010-12-11  10
1          A      二      2010-10-11  10
3          B      一      2010-10-11  10
3          B      二      2010-10-11  10

 

第二步:要得到“产品一”(变量)最后的订购日期:    
出库单号 客户 产品 最后订购日期 订购数量
2          A      一      2010-12-11   10
3          B      一      2010-10-11   10


--  作者:狐狸爸爸
--  发布时间:2010/12/23 14:57:00
--  

呵呵,这个需要高手,我不会,帮你顶。

 

图片点击可在新窗口打开查看


--  作者:小狐
--  发布时间:2010/12/23 15:19:00
--  

我目前只做到这样:

先筛选出每个客户,每种产品的最后的订购产品:

select max(日期) as 日期 ,客户,产品 from 出库,出库明细 where  出库.出库单号 = 出库明细.出库单号 group by 客户,产品

第二步:子查询:

select  出库单号,日期,客户,产品,数量 from 出库 inner join 出库明细 on 出库.出库单号 = 出库明细.出库单号
WHERE EXISTS (select max(日期) as 日期 ,客户,产品 from 出库,出库明细 where  出库.出库单号 = 出库明细.出库单号
group by 客户,产品)

可惜错了 ,子查询的语法结构弄错了

[此贴子已经被作者于2010-12-23 15:38:07编辑过]

--  作者:狐狸爸爸
--  发布时间:2010/12/23 15:33:00
--  

你可以去这里问问,会比较快地得到答案:

 

http://forum.csdn.net/SList/MSSQL_Basic/

 

 


--  作者:mr725
--  发布时间:2010/12/23 15:45:00
--  
以下是引用小狐在2010-12-23 14:29:00的发言:

出库表:  
出库单号 日期       客户
1     2010-10-11  A
2     2010-12-11  A
3     2010-10-11  B

 

出库明细:关联列为出库单号  
出库单号 产品 数量
1          一    10
1          二    10
2          一    10
3          一    10  

3          二    10  

 

第一步要得到每个客户每个产品的最后订购日期:    
出库单号 客户 产品 最后订购日期 订购数量
2          A      一      2010-12-11  10
1          A      二      2010-10-11  10
3          B      一      2010-10-11  10
3          B      二      2010-10-11  10

 

 

红色的是两个编号,不可能合并在一起。

[此贴子已经被作者于2010-12-23 15:45:46编辑过]

--  作者:小狐
--  发布时间:2010/12/23 16:06:00
--  

出库单号1对应两条明细,单号2对应一条明细。单号3对应两条明细