有如下表
客戶** 客戶名稱 單據日期 本期應收 本期應付
01 北京 2004-1-1 1000 0
01 北京 2004-2-1 100 0
01 北京 2004-3-1 0 200
01 北京 2004-4-1 500 200
01 北京 2004-5-1 500 0
02 上海 2004-1-1 0 2000
02 上海 2004-2-1 100 0
02 上海 2004-3-1 0 200
02 上海 2004-4-1 500 200
02 上海 2004-5-1 500 0
我想要得到如下效果:其中(期末餘額=上期期末餘額+本期應收-本期應付)
客戶** 客戶名稱 單據日期 本期應收 本期應付 期末餘額
01 北京 2004-1-1 1000 0 1000
01 北京 2004-2-1 100 0 1100
01 北京 2004-3-1 0 200 900
01 北京 2004-4-1 500 200 1200
01 北京 2004-5-1 500 0 1700
02 上海 2004-1-1 0 2000 -2000
02 上海 2004-2-1 100 0 -1900
02 上海 2004-3-1 0 200 -2100
02 上海 2004-4-1 500 200 -1800
02 上海 2004-5-1 500 0 -1300
設計如下:
create table 表(客戶** varchar(10),客戶名稱 varchar(10),單據日期 datetime,本期應收 int,本期應付 int)
insert 表 select '01 ', '北京 ', '2004-1-1 ',1000,0
union all select '01 ', '北京 ', '2004-2-1 ',100 ,0
union all select '01 ', '北京 ', '2004-3-1 ',0 ,200
union all select '01 ', '北京 ', '2004-4-1 ',500 ,200
union all select '01 ', '北京 ', '2004-5-1 ',500 ,0
union all select '02 ', '上海 ', '2004-1-1 ',0 ,2000
union all select '02 ', '上海 ', '2004-2-1 ',100 ,0
union all select '02 ', '上海 ', '2004-3-1 ',0 ,200
union all select '02 ', '上海 ', '2004-4-1 ',500 ,200
union all select '02 ', '上海 ', '2004-5-1 ',500 ,0
select *,期末餘額=(select sum(本期應收-本期應付) from 表 where 客戶**=a.客戶** and 單據日期 <=a.單據日期)
from 表 a
現在我有乙個表,如下
id 日期 上月累計
1 2010-5 50
1 2010-6 55
1 2010-7 60
2 2010-6 50
2 2010-7 40
想得到以下效果
id 日期 上月累計 總計
1 2010-5 50 50
1 2010-6 55 105
1 2010-7 60 165
2 2010-6 50 50
2 2010-7 40 90
sql語句如下
create table t11 (
id int null,
日期 datetime null,
上月累計 int null )
insert into t11
select 1,2010-5, 50
union
select 1,2010-6,55
union
select 1 ,2010-7 ,60
union
select 2 ,2010-6, 50
union
select 2 ,2010-7 ,40
select *,總計=(select sum(上月累計) from t11 where t11.id=a.id and t11.日期<=a.日期 )
from t11 a
結果如下:
MySQL 資料表操作 刪除資料表中的記錄
刪除資料記錄是資料操作中常見的操作,可以刪除表中已經存在的資料記錄。在mysql中可以通過delete語句來刪除資料記錄,該sql語句可以通過以下幾種方式使用 刪除特定資料記錄 刪除所有資料記錄。刪除特定資料記錄 在mysql中刪除特定資料記錄可通過sql語句delete來實現,其語法形式如下 de...
資料表操作
1 建立資料表 create table if not exists table name column name data type,2 檢視資料表 show tables show tables from mysql 3 檢視資料表結構 show columns from tbl name 4 ...
資料表操作
create table 表名 欄位名 型別 約束,欄位名 型別 約束 例 建立學生表,字段要求如下 姓名 長度為10 create table students name varchar 10 例 建立學生表,字段要求如下 姓名 長度為10 年齡 create table students nam...