개발/SQL 7

[MS-SQL] 대칭키를 활용한 데이터 복호화 처리

--암호화를 할때는 인증서를 통해 대칭키를 열어줍니다. OPEN SYMMETRIC KEY test01 DECRYPTION BY CERTIFICATE testCert; 암호화된 데이터를 다루기전에 꼭 대칭키를 통해 열어주고 진행해야 합니다. select CONVERT(varchar, DecryptByKey(phone)) as phone ,CONVERT(varchar, DecryptByKey(email)) as email from user_info; 이런식으로 DecryptByKey함수를 통해 데이터를 복호화 합니다. 전부 사용하고 난뒤에는 꼭 다시 키를 닫아줍니다 CLOSE SYMMETRIC KEY test01;

개발/SQL 2022.12.29

[ORACLE] 날짜 타입에 따라 조회하는 방법

개발 중 날짜 속성에 따른 조회방법이 있다는 걸 알았다 테이블 속성에 보면 DATE 속성과 VARCHAR2 이런식으로 하여 날짜를 셋팅하는데 DATE 타입은 기본값 없이 그냥 사용되는 반면 VARCHAR2 속성은 일단 14BYTE를 할당하며 기본값을 시스템 날짜로 설정한다. 타입 : DATE 기본값 : 타입 : VARCHAR2(14BYTE) 기본값 : TO_CHAR(SYSDATE, 'YYYYMMDD HH24MISS') 이런식으로 되어있는데 왜 이렇게 사용됐는지 알아보니 하위 예제로 차이를 알아보자. 조건 : 2022-08-04 09:40 글을 작성해서 조회하려고 한다. 1. DATE 타입 SELECT * FROM 글목록 WHERE 등록일 BETWEEN '20220801' AND '20220804'; 이런..

개발/SQL 2022.08.04

[ORACLE] DBMS_RANDOM 난수 랜덤하게 값 셋팅하기

개발중에 문제 자동추출이라는 팝업을 구현해야 됐는데 거기서 사용했던 DBMS_RANDOM 를 사용했던 기능을 설명하려고 한다. 문제 10개를 랜덤하게 뽑으려고 하는 예제를 구현하려고 한다. ex) SELECT * FROM 문제정보 WHERE ROWNUM < 11 ORDER BY DBMS_RANDOM.VALUE; DMBS_RANDOM.VALUE를 사용하면 조회값이 랜덤하게 나온다. 다양한 기능으로 종종 사용할 것 같다.

개발/SQL 2022.08.04

[ORACLE] 오늘날짜 구하기 (SYSDATE)

오늘날짜 및 시간을 구하는 함수는 SYSDATE를 사용하며 사용방법은 이렇게 된다 오늘날짜 기준 : 2022/07/28 첫번째 방법 사용방법: TO_CHAR(SYSDATE) 결과값 : 22/07/28 이렇게 사용하는 방법도 있고 날짜 형식과 시간을 맞춰 구현하는 방법도 있다. 두번째 방법 사용방법: TO_CHAR(SYSDATE, “YYYY-MM-DD HH:MI:SS”) 결과값 : 2022-07-28 09:54:13 입맛에 따라 YYYY 년도 만 뽑을 수 있고 MM 월을 뽑을 수 있고 사용 타입에 따라 사용하면 된다.

개발/SQL 2022.07.28

[ORACLE] EXISTS, NOT EXISTS 사용법

EXISTS는 boolean 형식의 리턴값(TRUE, FALSE)을 갖는 함수로 WHERE 절에서 자주 사용되며 때로는 유효성 체크값을 리턴받아 처리하는 용도로 사용되며 EXISTS(서브쿼리) 서브쿼리의 결과가 하나라도 존재 하면 TRUE 없으면 FALSE 를 반환해준다. 하위 학생, 교육신청 테이블로 EXISTS과 NOT EXISTS를 사용해보자. ex) 학생 테이블 학생번호 학생명 학년 100 또치 3 200 고길동 1 300 둘리 2 교육신청 테이블 학생번호 신청과목 학점 300 사회학개론 4 100 열역학 5 500 교양 3 EXISTS를 이용하여 교육 신청한 학생만 보여주려고 합니다. SELECT A.학생번호 A.학생명 A.학년 FROM 학생 A WHERE 1 = 1 AND EXISTS (SEL..

개발/SQL 2022.07.27

[ORACLE] DECODE() , NVL(), NVL2() 사용방법

쿼리사용 중에 가장많이 사용되는 코드인 DECODE(), NVL() 함수에 대해 알아보려고 합니다. 1. DECODE DECODE 함수는 CASE WHEN 구문과 많이 비교되는데 기능은 유사하지만 더 욱 간단하게 사용할 수 있는 함수 입니다. 사용방법 : DECODE(컬럼명, "조건값1" ,"결과값1", "조건값2", "결과값2", "결과값"... ) ex) DECODE (사용여부, "Y", "사용" ,"N" ,"미사용" ,"보류") if 문으로 설명하자면 If(사용여부 == "Y") { return "사용"; } else if ( 사용여부 == "N") { return "미사용"; } else { return "보류"; } ex) 사용여부 값이 Y 일때 SELECT DECODE (사용여부, "Y", "..

개발/SQL 2022.07.27
반응형