자바스트립트에서 replace 메서드를 사용하면 첫 번째 문자만 치환이 되고 작동이 멈춘다. String 클래스에 replaceAll 메서드를 추가하여 쉽게 문자를 치환 할 수 있다. □ 방법 1. String prototype 메서드 추가 //replaceAll prototype 선언 String.prototype.replaceAll = function(org, dest) { return this.split(org).join(dest); } //replaceAll 사용 var str = "Hello World"; str = str.replaceAll("o","*"); alert(str); 설명 : str = str.split("o"); 출력 : ["Hell", " W", "rld"] //해당 문자로 배..
자바스크립트의 foreach 구문을 이용하여 JSON 객체의 키(key)와 값(value)를 쉽게 가져올 수 있다. jQuery를 사용한다면 $.each 구문을 대신 사용할 수도 있다. ■ Javascript var json = { 'NAME':'홍길동', 'SEX':'남', 'AGE':'99세'}; for(key in json) { alert('key:' + key + ' / ' + 'value:' + json[key]); } ■ jQuery var json = { 'NAME':'홍길동', 'SEX':'남', 'AGE':'99세'}; $.each(json, function(key, value){ alert('key:' + key + ' / ' + 'value:' + value); });
오라클 11g 이상이면 REGEXP(정규식) 함수를 이용하여 손쉽게 가능하나 그 이하 버전에서는 INSTR 함수를 이용하여 비슷한 효과를 얻을 수 있다. □ 방법 1. (REGEXP 이용) - Oracle 11g --가상 테이블 WITH TEST_TABLE AS ( SELECT '고구려' COUNTRY, '1대' ST, '동명성왕' KING_NM FROM DUAL UNION ALL SELECT '고구려' COUNTRY, '3대' ST, '대무신왕' KING_NM FROM DUAL UNION ALL SELECT '백제' COUNTRY, '1대' ST, '온조왕' KING_NM FROM DUAL UNION ALL SELECT '고구려' COUNTRY, '2대' ST, '유리왕' KING_NM FROM DUA..
WM_CONCAT 함수를 이용하여 손쉽게 여러행의 데이터를 한 컬럼으로 합칠 수 있다.□ 방법 1. (WM_CONCAT 이용) --가상 테이블 WITH TEST_TABLE AS ( SELECT '고구려' COUNTRY, '1대' ST, '동명성왕' KING_NM FROM DUAL UNION ALL SELECT '고구려' COUNTRY, '3대' ST, '대무신왕' KING_NM FROM DUAL UNION ALL SELECT '백제' COUNTRY, '1대' ST, '온조왕' KING_NM FROM DUAL UNION ALL SELECT '고구려' COUNTRY, '2대' ST, '유리왕' KING_NM FROM DUAL UNION ALL SELECT '백제' COUNTRY, '3대' ST, '기루왕' ..
데이터를 실수로 삭제(DELETE) 또는 수정(UPDATE)을 하고 COMMIT을 했다면 당황하지 말고 TIMESTAMP를 사용하여 이전의 데이터를 조회하여 복구할 수 있다. 오라클 9i Release 2부터 Flashback이라는 기능이 생겼는데, 일종의 휴지통이라고 생각하면 된다. Flashback의 사이즈만큼만 과거 데이터를 보관하고 있으니, 변경이 자주 발생하는 테이블은 복구 가능한 시점이 짧을 수 있다. SELECT * FROM test_table AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '10' MINUTE) WHERE id = '1234' 위의 쿼리를 조회하면 10분 이전의 데이터가 조회된다. 단위는 SECOND, MINUTE, HOUR, DAY로 바꿔 쓸 수 ..
html5에 오프라인에서도 웹사이트가 작동할수 있도록 기능이 추가되었다 모바일분야에 많이 활용이 될수 있을것같다. 인터넷접속이 원할하지 않기 때문에 일부의 파일을 오프로인으로 지정해 두면 인터넷이 연결되지 않아도 서비스를 이용할수 있다 아래는 Application Cache 사용방법이다. 1. 웹서버에 mine type를 설정해 주어야한다 ASP (IIS 웹서버) iis웹서버 MINE 형식 확장명 : .manifest MINE형식 : text/cache-manifest 을 추가한다. 또는 web.config 파일에 아래의 코드를 추가한다 PHP : .htaccess 파일 생성 or 추가 (AddType text/cache-manifest .manifest) 2. .manifest 파일을 만든다. 아래의 ..
직원명을 초성으로 검색할수 있도록 요청이 들어와서 급하게 만들었다. 직원수가 아주많은곳에서는 where절에 사용하면 안됨... 예) fn_korinitialkeyword('홍길동') return : ㅎㄱㄷ select * from 테이블 where fn_korinitialkeyword(직원명컬럼) like '%ㅎㄱㄷ%' function fn_korinitialkeyword( str in varchar2) return varchar2 is returnStr varchar2(100); cnt number := 0; tmpStr varchar2(10); begin if str is null then return ''; end if; cnt := length(str); for i in 1 .. cnt loop ..
오라클에서 쿼리문을 작성하다 보면 테이블에 저장되지 않는 날짜까지 포함해서 조회해야 할 경우가 있다. 이럴 때는 시작일자와 종료일자를 설정하여 날짜 뷰를 생성하여 아우터 조인을 하면 쉽게 해결이 된다. 날짜 뷰 만들기 SELECT TO_DATE('20211201','YYYYMMDD') + LEVEL - 1 AS dates FROM dual CONNECT BY LEVEL
오라클 쿼리에서 칼럼에 구분자로 입력된 값을 행으로 분리(Split)하여 조회해야 할 상황이 종종 발생한다. 대부분 값을 조회하여 프로그래밍 코드에서 구분자를 분리하는 작업을 한다. 그러나 쿼리에서 미리 행으로 분리해야 하는 경우도 발생하므로 아래의 예제를 참고하면 된다. 부하가 많이 발생할 수 있으므로 데이터가 많은 경우는 권장하지 않는다. 예제 1 - Oracle 10g 이상 (정규식 함수 사용) SELECT REGEXP_SUBSTR(a.langList, '[^|]+', 1, LEVEL) AS split_result FROM (SELECT 'Java|Kotlin|Python|Swift' AS langList FROM dual) aCONNECT BY LEVEL 위의 예제는 구..
jquery 폰의 가로,세로 변경시 이벤트 처리방법 $('body').bind('orientationchange',function(event){ if (event.orientation == "portrait") { //세로 } else if (event.orientation == "landscape") { //가로 } })