> 데이터 베이스 > MySQL 튜토리얼 > Oracle 返回偶数个数据行

Oracle 返回偶数个数据行

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-07 17:16:09
원래의
1406명이 탐색했습니다.

查询Oracle表中的数据个数为奇数个时,自动加一个空白行,返回偶数个数据;如果表中的数据为偶数个时,直接返回偶数的所有行。

要求:

查询Oracle表中的数据个数为奇数个时,自动加一个空白行,返回偶数个数据;如果表中的数据为偶数个时,直接返回偶数的所有行。

一、在数据库中,,新建一个表,如下:

  • (  
  •   MONTHS NUMBER  
  • )  
  • create table MONTHSNUM ( MONTHS NUMBER )二、新增一行数据;

  • insert into monthsnum values(1);

    三、执行SQL:

  • select *  
  • select * from (select aa.*, mod(bb.countnum, 2) num from (select a.*, rownum rownum2 from (select rownum rownum1, t.months from monthsnum t union select to_number('') rownum1, to_number('') months from dual) a) aa, (select count(*) + 1 countnum from monthsnum t) bb order by aa.rownum2) where rownum 返回结果:

    说明:如果数据行数为奇数时,补一个空白行,使其为行数为偶数。

    四、再新增一行数据;

  • insert into monthsnum values(2);

    五、再执行第三步的SQL

    返回结果:

    说明:如果数据行数为偶数时,直接返回数据行的所有数据。

    linux

  • 관련 라벨:
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿