database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 30791 게시물 읽기
No. 30791
년도 목록 쿼리 질문 드립니다.ㅠㅠ
작성자
테르
작성일
2014-11-11 12:19
조회수
8,428

안녕하세요 oracle 만 사용해보고 mysql 은 처음 사용해서 질문 하나 드립니다.

 

특정년도 이전 5년치 년도 목록을 뽑으려고 하는데요

oracle 에서는아래와 같이 가능 한데

 

SELECT 2014-(LEVEL-1) years

FROM dual

CONNECT BY LEVEL < 6

ORDER BY years

 

mysql 은 테이블 생성하는 방식 말고 위처럼 불가능 한가요?

이 글에 대한 댓글이 총 1건 있습니다.

connect by를 지원하지 않아서.

문제가 특정 되면 비정형적인 모습으로 풀수 있습니다.

시퀀스 256 이내일 경우 아래와 같은 예제를 활용 가능.

SELECT YEAR(NOW()) - SeqValue -1 AS years
FROM (
  SELECT
  (TWO_1.SeqValue + TWO_2.SeqValue + TWO_4.SeqValue + TWO_8.SeqValue + TWO_16.SeqValue + TWO_32.SeqValue + TWO_64.SeqValue + TWO_128.SeqValue) SeqValue
  FROM
  (SELECT 0 SeqValue UNION ALL SELECT 1 SeqValue) TWO_1
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 2 SeqValue) TWO_2
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 4 SeqValue) TWO_4
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 8 SeqValue) TWO_8
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 16 SeqValue) TWO_16
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 32 SeqValue) TWO_32
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 64 SeqValue) TWO_64
  CROSS JOIN (SELECT 0 SeqValue UNION ALL SELECT 128 SeqValue) TWO_128
) t
WHERE SeqValue < 5
ORDER BY years;

 

박인호(paerae)님이 2014-11-11 12:50에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
30794프로시져 중첩커서 사용 인서트문 입니다 ㅜ
도와주세요
2014-11-17
9062
30793암호를 암호화하는 동안 오류가 발생했습니다. 연결이 닫혔습니다.
류준우
2014-11-17
8200
30792도와주세요~!!세로의 값을 가변적으로 가로로 출력 [2]
yhs
2014-11-11
8937
30791년도 목록 쿼리 질문 드립니다.ㅠㅠ [1]
테르
2014-11-11
8428
30790다중 테이블 입력시 고민사항입니다. [2]
박지원
2014-11-09
8169
30789한 테이블에 적용할 트리거에 After Insert와 After Update 이벤트 둘다 줄수 없을까요? [1]
궁금
2014-11-07
9465
30788다른 서버에 있는 html파일을 자바로 연동해서 MySQL의 테이블에 넣는 방법 [1]
윰이
2014-11-04
8195
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.049초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다