SET CENTURY ON
SET DATE YMD
**表A
CREATE CURSOR 表A (工号 C(10),姓名 C(12),部门 C(20),职级 C(20))
INDEX ON 工号 TAG 工号
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A111','张三','销售部一','主管')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A112','李四','销售部二','经理')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A113','王五','销售部一','业务员')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A114','赵六','销售部二','主管')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A115','陈七','外贸部一','主管')
**表B
CREATE CURSOR 表B (工号 C(10),业绩 I(4), 产品名称 C(20), 日期 D DEFAULT DATE())
INDEX ON 工号 TAG 工号
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',112,'电视',{^2015-01-10})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',38,'电视',{^2015-02-20})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',102,'冰箱',{^2015-03-12})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',150,'洗衣机',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A112',151,'电视',{^2015-02-10})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A112',238,'电视',{^2015-03-20})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',102,'冰箱',{^2015-01-12})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',150,'洗衣机',{^2015-03-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',250,'微波炉',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A114',750,'微波炉',{^2015-03-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A114',250,'微波炉',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',450,'微波炉',{^2015-02-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',800,'洗衣机',{^2015-04-25})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',700,'洗衣机',{^2015-05-2})
SELECT 表A.工号,MAX(表A.姓名) AS 姓名,MAX(表A.部门) AS 部门,MAX(表A.职级) AS 职级,SUM(表B.业绩) AS 业绩,表B.产品名称 FROM 表A,表B ;
WHERE 表A.工号=表B.工号 AND 日期>= {^2015-01-01} AND 日期<= {^2015-04-30} ;
GROUP BY 表A.工号,表B.产品名称 ;
INTO CURSOR TMP_AB
BROWSE
*VFP9,估计VFP6也可以
[ 本帖最后由 mywisdom88 于 2015-7-28 17:32 编辑 ]
SET DATE YMD
**表A
CREATE CURSOR 表A (工号 C(10),姓名 C(12),部门 C(20),职级 C(20))
INDEX ON 工号 TAG 工号
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A111','张三','销售部一','主管')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A112','李四','销售部二','经理')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A113','王五','销售部一','业务员')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A114','赵六','销售部二','主管')
INSERT INTO 表A(工号,姓名,部门,职级) VALUE('A115','陈七','外贸部一','主管')
**表B
CREATE CURSOR 表B (工号 C(10),业绩 I(4), 产品名称 C(20), 日期 D DEFAULT DATE())
INDEX ON 工号 TAG 工号
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',112,'电视',{^2015-01-10})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',38,'电视',{^2015-02-20})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',102,'冰箱',{^2015-03-12})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A111',150,'洗衣机',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A112',151,'电视',{^2015-02-10})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A112',238,'电视',{^2015-03-20})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',102,'冰箱',{^2015-01-12})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',150,'洗衣机',{^2015-03-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A113',250,'微波炉',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A114',750,'微波炉',{^2015-03-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A114',250,'微波炉',{^2015-04-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',450,'微波炉',{^2015-02-19})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',800,'洗衣机',{^2015-04-25})
INSERT INTO 表B(工号,业绩,产品名称,日期) VALUE('A115',700,'洗衣机',{^2015-05-2})
SELECT 表A.工号,MAX(表A.姓名) AS 姓名,MAX(表A.部门) AS 部门,MAX(表A.职级) AS 职级,SUM(表B.业绩) AS 业绩,表B.产品名称 FROM 表A,表B ;
WHERE 表A.工号=表B.工号 AND 日期>= {^2015-01-01} AND 日期<= {^2015-04-30} ;
GROUP BY 表A.工号,表B.产品名称 ;
INTO CURSOR TMP_AB
BROWSE
*VFP9,估计VFP6也可以
[ 本帖最后由 mywisdom88 于 2015-7-28 17:32 编辑 ]