计算机最擅长的就是查表建立计算表
CREATE TABLE jd (
  d date NOT NULL default '0000-00-00',
  s decimal(10,2) NOT NULL default '0.00'
) TYPE=MyISAM;插入数据
INSERT INTO jd VALUES ('2003-09-24', '350.00');
INSERT INTO jd VALUES ('2003-09-25', '350.00');
INSERT INTO jd VALUES ('2003-09-26', '320.00');
INSERT INTO jd VALUES ('2003-09-27', '320.00');
INSERT INTO jd VALUES ('2003-09-28', '350.00');
INSERT INTO jd VALUES ('2003-09-29', '450.00');
INSERT INTO jd VALUES ('2003-09-30', '450.00');
INSERT INTO jd VALUES ('2003-10-01', '450.00');
INSERT INTO jd VALUES ('2003-10-02', '450.00');
INSERT INTO jd VALUES ('2003-10-03', '450.00');
INSERT INTO jd VALUES ('2003-10-04', '420.00');
INSERT INTO jd VALUES ('2003-10-05', '420.00');
INSERT INTO jd VALUES ('2003-10-06', '450.00');
INSERT INTO jd VALUES ('2003-10-07', '450.00');
INSERT INTO jd VALUES ('2003-10-08', '450.00');执行查询
SELECT sum(s) FROM `jd` where d>='2003-9-25' and d <='2003-10-7'只要维护好这张表,各种单价和优惠都可以计算

解决方案 »

  1.   

    xuzuning(唠叨) 得方法需要过程维护
      

  2.   

    xuzuning(唠叨) 兄:就你的方法有一些问题必须考虑:1。一个房间如果一年有365条记录,那么4000个房间就是1460000条记录,两年的数据再翻翻,就Mysql的能力令人不太放心,除非使用Ms SQL或其他类型的数据库。
    2。维护上会比较麻烦,因为酒店的房间价格可不是一成不变的,如果修改数据比较多的话,每次重构一次数据库,所花的时间可不少。