挺复杂的sql,求个思路,该如何解决
挺复杂的sql,求个思路
求个思路——
问题描述:查询某日期下(),某用户的余额,要求:如果此用户今天没有,则查昨天的,昨天没有再查前天的。。。
头大
------解决方案--------------------
对不起,没看清楚问题,不好意思
select t1.* from table t1 ,(select name , max(time) max_t from table where time <='XXX' group by name )t2 where t1.name =t2.name and t1.time =t2.max_t
------解决方案--------------------
测试数据:
求个思路——
问题描述:查询某日期下(),某用户的余额,要求:如果此用户今天没有,则查昨天的,昨天没有再查前天的。。。
头大
------解决方案--------------------
对不起,没看清楚问题,不好意思
select t1.* from table t1 ,(select name , max(time) max_t from table where time <='XXX' group by name )t2 where t1.name =t2.name and t1.time =t2.max_t
------解决方案--------------------
测试数据:
- SQL code
CREATE TABLE T7 ( NAME VARCHAR(4), MyTime DATE, Money NUMBER(4) ); INSERT INTO T7 VALUES('a', '17-11月-2011', 1); INSERT INTO T7 VALUES('a', '18-11月-2011', 2); INSERT INTO T7 VALUES('a', '16-11月-2011', 5); INSERT INTO T7 VALUES('a', '13-11月-2011', 7); INSERT INTO T7 VALUES('b', '11-11月-2011', 10); INSERT INTO T7 VALUES('b', '20-11月-2011', 9); INSERT INTO T7 VALUES('c', '16-11月-2011', 5); INSERT INTO T7 VALUES('c', '14-11月-2011', 3);