정규식을 활용해서 select REGEXP_REPLACE('홍길동', '.', '*', 2)as name, REGEXP_REPLACE('김신', '.', '*', 2)as name2, REGEXP_REPLACE('황금독수리온세상을놀라게하다', '.', '*', 2)as name3 from dual SELECT REGEXP_REPLACE('홍길동', '(^.).+(.$)', '\1*\2') as name, REGEXP_REPLACE('김신', '(^.).+(.$)', '\1*\2') as name2, REGEXP_REPLACE('황금독수리온세상을놀라게하다', '(^.).+(.$)', '\1*\2') as name3 from dual 한글만 확인하려면 . -> [가-힣] 으로 변경 (1)의 답은 내가 okk..
DBMS의 종류에 따라 조금씩 차이는 있지만 개념 이해하는 정도만 넘어가도록 하자 조인이란 두 개이상의 테이블들을 합성한 후, 여기서 유용한 정보를 추출하는 연산이다. A라는 테이블에서 학생의 학적정보(학번, 이름, 학과)가 있고 B라는 테이블에서 학생의 신상정보(학번, 주소, 연락처)가 있을때, A와 B 두개의 테이블을 조인해서 select 함으로서 학번, 이름, 주소를 한번의 쿼리로 표시할 수 있다. 조인의 종류는 크로스 조인, 자연 조인, 내부 조인, 외부 조인, 자체 조인등 여러가지가 있는데 그중 몇 가지만 알아보자. 1. 크로스 조인 : 상호조인이라고도 하며 두 테이블을 서로 곱하는 개념의 연산으로, 일명 카디션 곱이라고 한다. 위의 예에서 "select * from 학적정보 cross join..
sum(합을 구하는 함수), decode(치환하는 함수)를 이용해서 그룹별 단순화해보자. 예를 들어, 학과별 자퇴자 명단을 구해보면 select dept, count(sno) from student where code = '자퇴' group by dept; 결과는 dept count(sno) 국문과 3 영문과 2 철학과 5 근데 주야간으로 구분해야 한다. select dept, div_dn, count(sno) from student where code = '자퇴' group by dept, div_dn; 으로 조회하면 아래와 같이 나오는데 dept div_dn count(sno) 국문과 주간 2 국문과 야간 1 영문과 주간 0 영문과 야간 2 ... ... ... 이런 식으로 같은 과에서 주야별로 나눠..
현상 : A 라는 User가 A'라는 테이블을 만들었다. B 라는 User에서 A' table을 조회 했을때 조회가 안된다. 테이블은 분명히 있는데 없다고 나온다. 원인 : B user는 A'table에 대한 권한이 없기 때문에 조회가 안된다. 조치 : A user로 접속해서 권한을 주면된다. grant select on 해당테이블(A') to 주고싶은 사용자(B); 위 명령어에 update, insert,delete 같이 넣으면 해당 DML이 적용된다. 예) grant update,insert on A' to B 추가 : function(함수)도 실행 권한을 줄 수 있다. grant execute on 권한줄 함수이름 to 권한 받을 사용자;
select * from TABLE(대상 테이블) where to_char( 대상 테이블 컬럼, 'yyyymmdd' ) = to_char( sysdate, 'yyyymmdd'); to_char는 char형으로 변환하라는 것이다. 즉, date 형으로 저장된 data를 yyyymmdd 형태로 변환하여 sysdate 현재 날짜로 변환해서 조건을 비교하라는 뜻으로 date형을 char(캐릭터) 형으로 변환하여 조회해야 결과가 정상적으로 나온다. 예를 들면 2021년 5월 14일에 로그인한 사람을 조회하려면(user_table이 사용자 테이블, accessdate가 로그인 날짜) select * from user_table where to_char(accessdate , '20210514' ) = to_char..
A,B 두 테이블을 조인했을 때 특정 조건에 대응하는 B 값이 없을 때 표시하는 방법입니다. 엑셀에서 값이 없을 때는 표시 방법은 여기를 누르세요. 예를 들어 A 테이블은 시퀀스(seq), 학번(sno)이 있고 B 테이블은 학번(sno)과 총 취득학점(tot_unitget)이 있다. select a.seq, b.sno, b.tot_unitget from A a, B b where a.sno = b.sno(+) 처럼 조인함수를 써서 보통 표시한다. 여기서 문제 두둥~~ 2016년 이전기준으로 총 취득학점을 합해서 나타내야 하는 요청이 들어왔다.(B에 조건에 따라 값을 표시) 아래와 같이 조회 해봤다. select a.seq, b.sno, nvl(sum(b.tot_unitget,0) from A a, B b..
사용자들이 소수점을 넣어서 저장하는 바람에 성적 합계가 안맞는 경우가 생겨서 data를 일괄적으로 +1을 해야 했다. 일반적으로 update 테이블 set 컬럼명 = 컬럼명+1 where 조건 으로 하면 조건에 따라 컬럼의 데이터 값에서 +1이 되는데, 조건에도 서브쿼리를 활용할 수 있다. 임시테이블에서 특정 여러 조건이 같은 것만 +1을 해야 할때, 예를 들면 yy는 연도 term 기간, sbj 과목명, anx 분반, sno 학생으로 해당 연도, 학기의 과목명분반을 들은 학생의 성적만 +1할때 아래 쿼리를 활용한다. update 테이블 set 컬럼명 = 컬럼명+1 where (yy, term, sbj, anx.sno) in (select yy, term, sbj, anx,sno from tmp_sno)..
Oracle 함수중에 조회된 null값을 치환하는 함수중에 nvl함수와 Decode함수가 있다. NVL은 말그대로 Null Value 의 약자로 nvl(컬럼명,1)의 뜻은 값이 null일 경우 1로 치환, 그렇지 않을 경우 컬럼의 값을 나타냄. select nvl(a,1) from A : A table로부터 a컬럼에 null이 저장된 값을 1로 치환해서 조회 a b null 1 1 2 2 3 3 null 위의 A 테이블을 위 쿼리로 조회하면 nvl(a,1) 1 1 2 3 decode(컬럼명, A,1, B, 2, 3)의 뜻은 컬럼값이 A이면, 1, B면 2, A,B도 아니면 3으로 치환 select decode(a,1,참,2,거짓,무효) from A : A table로부터 a컬럼에 1이 저장되어 있으면 참..
- Total
- Today
- Yesterday
- 다이어트
- decode
- ChatGPT
- 서브 40
- 혁신도시 국수
- 제주 마음 샌드
- 갖고싶다 고양이
- 장수풍뎅이
- i7-1260P
- 칠곡 자전거 대회
- 애디그램
- 일취월장
- 오렌지가재
- 경산 국수
- 베스킨라빈스 포켓몬
- 애드센스
- 고양이
- 가재
- 반려곤충
- 대구국제마라톤
- GCP #GCP GIFT#
- 캐시워크
- 대구 고양이 카페
- 도로이
- chatgpt 정의
- OKOK앱
- 여름 자전거 대회
- 타임캐시
- 가재 탈피
- 대구 야간 라이딩
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |