存储过程问题
CREATE PROCEDURE queryjxchuizong @bianhao varchar(20) , @cangku varchar(30) ,@supplyman varchar(30), @instorebegin varchar(20), @instoreend varchar(20) , @outstorebegin varchar(20) ,@outstoreend varchar(20)
AS
beginselect fgoods_id,sum(fnum+salenum) as innum,sum(fnum*inprice+salenum*inprice) AS INMONEY,0 AS OUTNUM,0 AS OUTMONEY --INTO #DDD --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=35 and (convert(VARCHAR,indate,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_idselect fgoods_id,0 as innum,0 AS INMONEY,sum(salenum) AS OUTNUM,sum(salenum*saleprice) AS OUTMONEY --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=1 and (convert(VARCHAR,SALEDATE,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_idend
GO我想把以上两个select(查询结果为同样的表结构)合并在一个表里要加什么语法么? 假如第一个查询结果是3条记录 第二个结果也是3条 想合并在一个表中6条记录
CREATE PROCEDURE queryjxchuizong @bianhao varchar(20) , @cangku varchar(30) ,@supplyman varchar(30), @instorebegin varchar(20), @instoreend varchar(20) , @outstorebegin varchar(20) ,@outstoreend varchar(20)
AS
beginselect fgoods_id,sum(fnum+salenum) as innum,sum(fnum*inprice+salenum*inprice) AS INMONEY,0 AS OUTNUM,0 AS OUTMONEY --INTO #DDD --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=35 and (convert(VARCHAR,indate,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_idselect fgoods_id,0 as innum,0 AS INMONEY,sum(salenum) AS OUTNUM,sum(salenum*saleprice) AS OUTMONEY --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=1 and (convert(VARCHAR,SALEDATE,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_idend
GO我想把以上两个select(查询结果为同样的表结构)合并在一个表里要加什么语法么? 假如第一个查询结果是3条记录 第二个结果也是3条 想合并在一个表中6条记录
from t_stock_detail where fstock_id=35 and (convert(VARCHAR,indate,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_id
union all
select fgoods_id,0 as innum,0 AS INMONEY,sum(salenum) AS OUTNUM,sum(salenum*saleprice) AS OUTMONEY --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=1 and (convert(VARCHAR,SALEDATE,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_id
AS
begin select fgoods_id,sum(fnum+salenum) as innum,sum(fnum*inprice+salenum*inprice) AS INMONEY,0 AS OUTNUM,0 AS OUTMONEY --INTO #DDD --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=35 and (convert(VARCHAR,indate,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_id
union all
select fgoods_id,0 as innum,0 AS INMONEY,sum(salenum) AS OUTNUM,sum(salenum*saleprice) AS OUTMONEY --sum(salenum),sum(salenum*saleprice)
from t_stock_detail where fstock_id=1 and (convert(VARCHAR,SALEDATE,121) BETWEEN '2008-11-01' AND '2008-11-20') group by fgoods_id end
GO
不去重复数据
union all 合并所有表结构相同的记录....
union :合并所有表结构相同的记录,并去掉重复的...