帮写一个简单的SQL - MS-SQL Server / 应用实例
表结构如下:
入出库 (值为:入库,出库)
客户名称
产品品名
交货数量
登记日期
要检索出: 客户名称,产品品名,前日结存数量(登记日期前一天以前的入库的交货数量合计-出库的交货数量合计),本日入库数量(登记日期那天的入库数量合计),本日出库数量(登记日期那天的出库数量合计),本日结存数量(前日结存数量+本日入库数量-本日出库数量)
检索条件:客户名称,产品品名,登记日期
SQL code:
select 客户名称,产品品名,
前日结存数量 =(select sum(case when 入出库='入库' then 交货数量 else 0 end), -sum(case when 入出库='出库' then 交货数量 else 0 end) from tb where 客户名称 = 'A' and 产品品名 = 'A01' and 登记日期<'2010-05-20'),--(登记日期前一天以前的入库的交货数量合计-出库的交货数量合计),
本日入库数量 = sum(case when 入出库='入库' then 交货数量 else 0 end),--(登记日期那天的入库数量合计),
本日出库数量 = sum(case when 入出库='出库' then 交货数量 else 0 end),--(登记日期那天的出库数量合计),
本日结存数量 = sum(case when 入出库='入库' then 交货数量 else 0 end) - sum(case when 入出库='出库' then 交货数量 else 0 end) --(前日结存数量+本日入库数量-本日出库数量)
from tb
where 客户名称 = 'A' and 产品品名 = 'A01' and 登记日期='2010-05-20'
group by 客户名称,产品品名,登记日期
xys_777:
你好。
如果条件只有:登记日期
要求:检索结果的每一条的:客户名称,产品品名不能重怎么改呀?
xys_777:
相关问答:
执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......
现在有一个部门表dept(部门名称,部门号。。)有一个人员表emp(姓名,人员编号,职位,薪资,部门)
emp表中的内容是这样的:
a 1 工程师 3000 软件部
b 2 普通员工 2000 硬件部
c 3 工程师 4000 硬件部
d ......
表数据
COL1 COL2 COL2 COL4 COL5
----------------------------------------------------------------------------------------------
2010-05-05 00:00 ......
通过NAME字段条件查询一个数据表,假设我有100个姓名,有以下两个方法,
方法1:
把100个Name 组成一个SQL语句,比如 Select * from tmp_table where Name='张三' or Name ='李四' Or ...Or Name='第一百个姓名'
......