当前位置:编程学习 > VB >>

期初期末SQL语句怎样写!在线等待

用VB和SQL做的系统,现在有二个表:客户预付金额表(字段:ID,客户名称,预付金额),收款明细表(字段:合同编号,客户名称,应收金额,已收金额,收款时间),要做个VB窗口,有三个控件(Txt客户名称,Txt开始日期,Txt结束日期)和一个网格控件(Dategrid),按条件查询时,查询数据在网格中显示,网格DateGrid中的字段为:客户名称,期初余额,期末余额。注意:收款明细表中的客户名称不一定都在客户预付金额表中有。如果没有也要在查询网格中显示出来。 --------------------编程问答-------------------- 要代易做图? --------------------编程问答--------------------
引用楼主 jumay 的帖子:
用VB和SQL做的系统,现在有二个表:客户预付金额表(字段:ID,客户名称,预付金额),收款明细表(字段:合同编号,客户名称,应收金额,已收金额,收款时间),要做个VB窗口,有三个控件(Txt客户名称,Txt开始日期,Txt结束日期)和一个网格控件(Dategrid),按条件查询时,查询数据在网格中显示,网格DateGrid中的字段为:客户名称,期初余额,期末余额。注意:收款明细表中的客户名称不一定都在客户预付金额表中有。如果没…

客户预付金额表 表格字段客户名称到底是名称还是ID,同理 收款明细表也有这个问题,case部分自己写吧,无非就是个加减法,null就说明预付金额表中没有预付


'假设两表客户名称字段均为ID
select case isnull(预付金额) from (
select t1.*,t2.* from 收款明细表 t1
left join 客户预付金额表 t2 on t1.fcustom_id = t2.fcustom_id)
'假设两表客户名称字段均为Name
select case isnull(预付金额) from (
select t1.*,t2.* from 收款明细表 t1
left join 客户预付金额表 t2 on t1.fcustom_name = t2.fcustom_name)

--------------------编程问答-------------------- 要代码,详细点 --------------------编程问答--------------------
sSQL = "SELECT ISNULL(T0.客户名称, ISNULL(T1.客户名称, T2.客户名称)) 客户名称, " & _
       "        ISNULL(T0.预付金额)-ISNULL(T1.欠款) 期初余额," & _
       "        ISNULL(T0.预付金额)-ISNULL(T2.欠款) 期末余额" & _
       "   FROM (SELECT * FROM 客户预付金额表" & _
       "          WHERE 客户名称 = '" & Txt客户名称 & "'" & _
       "        ) T0" & _
       "   OUTER JOIN" & _
       "        (SELECT SUM(应收金额-已收金额) 欠款" & _
       "           FROM 收款明细表" & _
       "          WHERE 客户名称 = '" & Txt客户名称 & "'" & _
       "            AND 收款时间 <= '" & Txt开始日期 & "'" & _
       "        ) T1 ON T1.客户名称=T0.客户名称" & _
       "   OUTER JOIN" & _
       "        (SELECT SUM(应收金额-已收金额) 欠款" & _
       "           FROM 收款明细表" & _
       "          WHERE 客户名称 = '" & Txt客户名称 & "'" & _
       "            AND 收款时间 <= '" & Txt结束日期 & "'" & _
       "        ) T2 ON T2.客户名称=T0.客户名称" & _
       "            AND T2.客户名称=T1.客户名称"
--------------------编程问答-------------------- 楼上的兄弟,我把你写的代码放到VB窗体中不行呀,老大再写具体点好嘛 --------------------编程问答-------------------- sql 有了,自己做查询啊。
http://zhidao.baidu.com/question/64914146.html --------------------编程问答--------------------
引用 5 楼 jumay 的回复:
楼上的兄弟,我把你写的代码放到VB窗体中不行呀,老大再写具体点好嘛

LZ,你不就是要SQL语句代码吗,建立连接,进行查询就可以了啊
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,