2013-10-13 2 views
0

I가 다음과 같은 데이터베이스 스키마 사실 (ReportNo, REPORTNAME, Load_Date)SQL 계산 주 번호

이 Load_Date이 ( 형)의 컬럼과 날짜의 기록에있다 YYYYMMDD 형식.

Load_Date에 이미 존재하는 날짜 을 사용하여 각 행의 주 번호를 인쇄해야합니다. 이미 숫자이므로 date에서 char로 변환 할 필요가 없습니다.

출력은 이어야합니다. 주 번호 | ReportNo | REPORTNAME

+1

'주 번호를'정의하십시오 시도 - ISO 주 - 중 - 년? 1 주일 단위 (1 월 1 일 이후 7 일마다)? 달의 주? 또는 다른 것? 또한 숫자 형식으로 날짜를 저장하는 것은 문제를 요구하는 것입니다. 즉, 내장 된 유효성 검사를 포기하고 날짜/시간이 실제로 그렇게 작동하지 않는다는 사실을 염두에 두지 마십시오. 실제로, 'week of month'가 아닌 다른 모든 'week number'계산은 (월이 시작된 이래로 일을 기준으로) 계산할 수있는 절대적으로 미친 수학을하고 싶지 않다면, 당신은'date' 타입으로 변환해야합니다. 자신 (20130228 이후의 다음 값은 20130301) –

답변

0

select ReportNo,ReportName,to_char(to_date(Load_Date,'yyyymmdd'),'ww') from Facts 
+0

to_char (, 'ww')의 결과가 로케일에 따라 달라질 수 있습니다. –