to zhenyukeji(何处是我家) : 如果我各个小类里面的记录的时间不同,那这样岂不是行不通?比如我10个小类,每个小类都要求选5条出来,但这50条记录的时间都不相同。 帮帮忙。
好的。谢了。 表结构: 名称 空值? 类型 ---------------- -------- ---------------- INFO_ID NOT NULL NUMBER IT_ID NUMBER IT_NAME NOT NULL VARCHAR2(20) IS_ID NUMBER IS_NAME NOT NULL VARCHAR2(20) INFO_TYPE CHAR(1) INFO_TITLE VARCHAR2(200) INFO_TIME DATE 条件:选择出每个IS_ID下的5条信息,info_time为最新.
如果你用的ORACLE 8I以上的版本,那么最好使用ROW_NUMBER() OVER()函数来处理 见下例: SELECT deptno, ename, hiredate, ROW_NUMBER() OVER (PARTITION BY deptno ORDER BY hiredate) AS emp_id FROM emp;
如果我各个小类里面的记录的时间不同,那这样岂不是行不通?比如我10个小类,每个小类都要求选5条出来,但这50条记录的时间都不相同。
帮帮忙。
表结构:
名称 空值? 类型
---------------- -------- ----------------
INFO_ID NOT NULL NUMBER
IT_ID NUMBER
IT_NAME NOT NULL VARCHAR2(20)
IS_ID NUMBER
IS_NAME NOT NULL VARCHAR2(20)
INFO_TYPE CHAR(1)
INFO_TITLE VARCHAR2(200)
INFO_TIME DATE
条件:选择出每个IS_ID下的5条信息,info_time为最新.
见下例:
SELECT deptno, ename, hiredate,
ROW_NUMBER() OVER (PARTITION BY deptno ORDER BY hiredate) AS emp_id
FROM emp;