Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

账龄分析怎么写查询

江月  发表于:2016-03-24 20:37:34  
复制

表A 客户信息

客户编码 客户名称

C001      CUST1

C002      CUST2

表B  发货

客户编码  发货日期  发货金额

C001       16-1-1     1000

C002       16-1-2     1000

C001       16-2-2     200

表C 收款

客户编码 收款日期 收款金额

C001     16-1-5    500


要求 做出如下表,假设信用期间为30天,分析基准日2-28日,先进先出法,分析开始日为2-1
表D 应收账款

客户编码 起初余额 本期发货 本期收款 期末余额  信用期  未逾期 逾期0-30  31-60 61-90 91-120 121以上

C001      2000        0              500    1500        30       0         1500

C002          0         200          0         200          30     200




 

Top
向征 发表于:2016-03-24 20:55:13
  1. 这是求余额的查询。
  2. SQL = "select a.客户名称,iif(isnull(b.期初余额),0,b.期初余额)-iif(isnull(c.金额),0,c.金额)+iif(isnull(d.金额),0,d.金额) as 期初余额 INTO TEMP from ((客户 a" _
  3. & " left join 期初 b on a.客户名称=b.客户)" _
  4. & " left join (select 客户,sum(金额) as 金额 from 收款登记 where 日期< #" & d1 & "# group by 客户) c on a.客户名称=c.客户)" _
  5. & " left join (select 客户名称,sum(金额) as 金额 from 发货 where 作废 is null and 日期< #" & d1 & "# group by 客户名称) d on a.客户名称=d.客户名称"


朱先生 发表于:2016-03-24 21:04:02

仔细审核一下你的要求,表中数据与A、B、C三表有没有对应关系

 



向征 发表于:2016-03-24 21:06:34

3 楼  

客户编码 是3表的关系



向征 发表于:2016-03-24 21:07:14
求余额相对容易实现,难点在于账龄分析

朱先生 发表于:2016-03-25 00:17:12
既然余额相对容易实现自已做,因未见你的表,做了个实时的账龄分析,如指定日期分析就不可用
SELECT IIf(DateDiff("D",[D1],[DATE()])<=30,[期末余额],"") AS [逾期0-30], IIf(DateDiff("D",[D1],[DATE()])>30 And DateDiff("D",[D1],[DATE()])<=60,[期末余额],"") AS [逾期31-60], IIf(DateDiff("D",[D1],[DATE()])>60 And DateDiff("D",[D1],[DATE()])<=90,[期末余额],"") AS [逾期61-90], IIf(DateDiff("D",[D1],[DATE()])>90 And DateDiff("D",[D1],[DATE()])<=120,[期末余额],"") AS [逾期91-120], IIf(DateDiff("D",[D1],[DATE()])>=121,[期末余额],"") AS 逾期121以上
FROM 表1;


向先生 发表于:2016-03-25 08:22:16

懂了.  

可以用 datediff  之前都不知道怎么用的.

我先试试

谢谢



总记录:6篇  页次:1/1 9 1 :