SELECT A.DD AS SOLAR,
substr(DD, 7) AS days,
substr(DD, 5, 2) AS months,
substr(DD, 1, 4) AS years,
DECODE(B.공휴일자, NULL, '0', '1') AS HOLYGUBN
FROM
(SELECT TO_CHAR(TO_DATE('201309'||TO_CHAR(ROWNUM), 'yyyymmdd'), 'yyyymmdd') AS DD
FROM 공휴일
WHERE ROWNUM <= 31
AND ROWNUM > 0
AND TO_CHAR(LAST_DAY(TO_DATE('201309'||'01', 'yyyymmdd')), 'dd') >= LTRIM(TO_CHAR(ROWNUM, '00'))
) A,
공휴일 B
WHERE TO_date(A.DD,'yyyy-mm-dd') =B.공휴일자(+);
-- 공휴일 테이블 따로 추가로 만들어서 조인시키면 휴일 설정도 가능한 테이블
달력 jsp 소스
<form name="tc_frm" method="post" action="<%=cp%>/ui/cnbrsv/th_Cal.jsp">
<input type="hidden" name="year" value="<%=year%>" />
<input type="hidden" name="month" value="<%=month%>" />
<input type="hidden" name="preval" value="0"/>
<input type="hidden" name="nextval" value="3"/>
<table id="calend" border=1>
<tr height="20" class="tabletop">
<td onclick="predate()"><font size="4">◀</font></td>
<td colspan="5"> <%=year%>년 <%=month%>월</td>
<td onclick="nextdate()"><font size="4">▶</font></td>
</tr>
<tr height="20">
<td width="15%" class="weeks">일</td>
<td width="14%" class="weeks">월</td>
<td width="14%" class="weeks">화</td>
<td width="14%" class="weeks">수</td>
<td width="14%" class="weeks">목</td>
<td width="14%" class="weeks">금</td>
<td width="15%" class="weeks">토</td>
</tr>
<tr>
<%
int newLine = 0;
for(int i=0 ; i<dayofweek-1 ; i++){
newLine++;
%>
<td> </td>
<% }%>
<% for(int i=0; i<thHlist.size();i++){
newLine++;
vo = (ThHelperVO)thHlist.get(i);
%>
<td onclick="calClick('<%=vo.getYears()%>-<%=vo.getMonths()%>-<%=vo.getDays()%>')"><%=Integer.parseInt(vo.getDays())%></td>
<%
if(newLine == 7){
newLine = 0;
%>
</tr><tr>
<%
}
}
%>
</table>
</form>
'STUDY > DB' 카테고리의 다른 글
[Oracle] 기본 함수 (0) | 2016.08.30 |
---|---|
DB Instance Connect error (0) | 2016.08.30 |