본문 바로가기
728x90
반응형

Database36

DB정보 검색 SQL 작업을 하다보면 DB의 정보들을 검색헤야하는 경우가 생긴다.AS-IS의 테이블정의서를 작성해야 할 떄도 있고 등등... 일일히 DB에 들어가서 보고 정리하지 말고 검색해서보자 참고) MySQL기준이다.  1. 테이블 리스트 정보확인SELECT @rownum := @rownum + 1 AS `No.`, TABLE_NAME AS `테이블명`, TABLE_COMMENT AS `테이블 코멘트`FROM INFORMATION_SCHEMA.TABLES, (SELECT @rownum := 0) rWHERE TABLE_SCHEMA = 'your_database_name'; -- 여기에 데이터베이스 이름 입력  2. 테이블 컬럼 정보확인SELECT ORDINAL_POSITION.. 2024. 10. 8.
[Mybatis] Mybatis 설치 1. 데이터설정 create table comment( comment_no bigint(19), user_id varchar(32), comment_content varchar(500), reg_date datetime ); 2. mysql-connector-j 설정 Add JARs... 클릭 3. MyBatis 설치 1. Maven Repo 접속 https://mvnrepository.com/ 2. MyBatis 검색 3. MyBatis 3.5.0 다운로드 4. 라이브러리 등록 2022. 12. 26.
[MySQL] DDL문 ALTER - 컬럼 추가, 수정, 삭제 아래와 같은 board테이블이 있다. desc board; 이 테이블의 컬럼구조를 변경하고 싶을 경우에는 ALTER를 사용한다. [ 추가 - ALTER ADD ] 형식 alter table [테이블명] add [컬럼명] [타입] [옵션]; 예제 EX01. 맨 뒤에 추가 alter table board add imgfile varchar(100) default 'none.gif'; EX02. 맨 앞에 추가 alter table board add imgfile varchar(100) default 'none.gif' first; EX03. 지정한 위치에 추가 alter table board add imgfile varchar(100) default 'none.gif' after content; [ 수정 - .. 2022. 12. 2.
[MySQL] update문에 에러가 날 때, Safe mode 해제 업데이트를 실행하려는데 이런 오류가 난다면 update member set phone='010-9999-9999' where userid='somi'; Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 해당 에러는 Safe Updates에 체크가 되어있는 경우 나타난다. 워크벤치에서 사용자의 실수를 줄이고자 안전모드를 걸어둔 것이다. Edit - Preferences를 선택 SQl Editor을.. 2022. 11. 22.
[MySQL] 테이블생성, 사용해보기 2022.11.22 - [JSP] - [JSP] MySQL 설치 [JSP] MySQL 설치 https://www.mysql.com/ MySQL Over 2000 ISVs, OEMs, and VARs rely on MySQL as their products' embedded database to make their applications, hardware and appliances more competitive, bring them to market faster, and lower their cost of goods sold. Learn More jjh93.com db확인 show database; db생성 create database mydb; mydb가 추가적으로 생성된 것을 확인 할 수 있다. db선.. 2022. 11. 22.
[MySQL] MySQL 설치 https://www.mysql.com/ MySQL Over 2000 ISVs, OEMs, and VARs rely on MySQL as their products' embedded database to make their applications, hardware and appliances more competitive, bring them to market faster, and lower their cost of goods sold. Learn More » www.mysql.com DOWNLOADS 클릭 MySQL Community (GPL) Downloads » 클릭 MySQL Installer for Windows 클릭 하단에 있는 431.7M 짜리 다운로드 No thanks, just start .. 2022. 11. 22.
[Oracle] SQL 복수행 함수 - GROUP 함수 GROUP 함수의 종류 함 수 이 름 의 미 사 용 예 COUNT 입력되는 데이터들의 총 건수를 출력 COUNT(sal) SUM 입력되는 데이터들의 합계값 구해서 출력 SUM(sal) AVG 입력되는 데이터들의 평균값 구해서 출력 AVG(sal) MAX 입력되는 데이터들 중 가장 큰 값을 출력 MAX(sal) MIN 입력되는 데이터들 중 가장 작은 값을 출력 MIN(sal) STDDEV 입력되는 데이터 값들의 표준 편차 값 출력 STDDEV(sal) VARIANCE 입력되는 데이터 값들의 분산 값 출력 VARIANCE(sal) ROLLUP 입력되는 데이터들의 소계값을 자동으로 계산해서 출력 CUBE 입력되는 데이터들의 소계 및 전체 총계를 자동 계산 후 출력 GROUPINGSET 한번의 쿼리로 여러 개의.. 2022. 11. 8.
[Oracle] REGEXP_LIKE() 정규식(Regular Expression) 함수로 다양한 조건 조회하는데 사용된다. 사용 기호 의 미 사 용 예 ^ (캐럿) 해당 문자로 시작하는 line 출력 ‘^pattern’ $ (달러) 해당 문자로 끝나는 line 출력 ‘pattern$’ . S로 시작하여 E으로 끝나는 line ( . è 1 character) ‘S . . . .E ’ * 모든 이라는 뜻. 글자수가 0 일수도 있음. ‘[a–z]*’ [ ] 해당 문자에 해당하는 한 문자 ‘[Pp]attern’ [ ^ ] 해당 문자에 해당하지 않는 한 문자 ‘[^a–m]attern’ -- p.80 연습문제 SELECT * FROM t_reg; -- p.81 소문자를 포함하는 행 SELECT * FROM t_reg WHERE REGEXP_LIKE(t.. 2022. 11. 7.
[Oracle] CASE() CASE 조건 WHEN 결과1 THEN 출력1 [WHEN 결과2 THEN 출력2] ELSE 출력3 END “컬럼명” EX01 Student 테이블을 참조하여 deptno1 이 201 번인 학생의 이름과 전화번호, 지역 명을 출력하세요. 단 지역번호가 02 면 "SEOUL", 031 이면 "GYEONGGI", 051 이면 "BUSAN", 052 이면 "ULSAN", 055 이면 "GYEONGNAM", 나머지는 "ETC" 로 표시하세요. EX02 Student 테이블의 jumin 컬럼을 참조하여 학생들의 이름과 태어난 달 , 그리고 분기를 출력하세요. 태어난 달이 01-03월 은 1/4, 04 – 06월 은 2/4 , 07 – 09 월 은 3/4 , 10 – 12 월은 4/4 로 출력하세요. SELECT n.. 2022. 11. 7.
[Oracle] DECODE( ) 연습문제 2022.11.07 - [Database] - [Oracle] DECODE( ) [Oracle] DECODE( ) DECODE 함수는 일반 개발 언어 등에서 사용중인 분기문인 IF 문을 오라클 SQL 안으로 가져온 함수. DECODE 함수는 오라클에서만 사용되는 함수로 IF 문을 사용해야 하는 조건 문을 처리할 수 있다. 유 jjh93.com EX01 Student 테이블을 사용하여 제 1 전공 (deptno1) 이 101 번인 학과 학생들의 이름과 주민번호, 성별을 출력하되 성별은 주민번호(jumin) 컬럼을 이용하여 7번째 숫자가 1일 경우 “ 남자” , 2일 경우 “여자 ” 로 출력하세요. SELECT name, jumin, DECODE(substr(jumin,7,1), '1', 'MAN', '2'.. 2022. 11. 7.
[Oracle] DECODE( ) DECODE 함수는 일반 개발 언어 등에서 사용중인 분기문인 IF 문을 오라클 SQL 안으로 가져온 함수. DECODE 함수는 오라클에서만 사용되는 함수로 IF 문을 사용해야 하는 조건 문을 처리할 수 있다. 유형 1. A 가 B 일 경우 ‘1’ 을 출력하는 경우 DECODE (A, B, ‘1’, null) 마지막 null은 생략 가능 합니다 EX professor 테이블에서 학과번호와 교수명 , 학과명을 출력하되 deptno 가 101 번인 교수만 학과명을 "Computer Engineering" 으로 출력하고 101번이 아닌 교수들은 학과명에 아무것도 출력하지 마세요 SELECT deptno, name, DECODE(deptno, 101, 'Computer Engineering') "DNAME" FR.. 2022. 11. 7.
[Oracle] NVL( ) NVL( ) NULL 값을 만나면 다른 값으로 치환해서 출력하는 함수 문법 NVL(컬럼 , 치환할 값) 치환값이 숫자일 경우 NVL(sal , 0) : sal 컬럼의 값이 null 일 경우 null 대신 0 으로 치환 NVL(sal , 100) : sal 컬럼의 값이 null 일 경우 null 대신 100 으로 치환 SELECT ename, comm, NVL(comm, 0), NVL(comm, 100) FROM emp WHERE deptno = 30; 치환 값이 문자일 경우 NVL(position , ‘사원’) -> position 값이 null 일 경우 ‘사원’ 으로 치환하라 치환 값이 날짜일 경우 NVL(hiredate,’2014/05/01’) -> hiredate 값이 null일 경우 '2014/0.. 2022. 11. 7.
[Oracle] TO_NUMBER( ) TO_NUMBER( ) 함수 이 함수는 숫자가 아닌 숫자처럼 생긴 문자를 숫자로 바꾸어 주는 함수 SELECT TO_NUMBER('5') FROM dual; 2022. 11. 7.
단일행 함수 TO_CHAR 예제 EX02 professor 테이블을 조회하여 201 번 학과에 근무하는 교수들의 이름과 급여, 보너스, 연봉을 아래와 같이 출력하세요. 단 연봉은 (pay*12)+bonus 로 계산합니다. SELECT name, pay, bonus, TO_CHAR((pay*12) + bonus, '999,999') "TOTAL" FROM professor WHERE deptno = 201; EX03 emp 테이블을 조회하여 comm 값을 가지고 있는 사람들의 empno , ename , hiredate , 총연봉,15% 인상 후 연봉을 아래 화면처럼 출력하세요. 단 총연봉은 (sal*12)+comm 으로 계산하고 아래 화면에서는 SAL 로 출력되었으며 15% 인상한 값은 총연봉의 15% 인상 값입니다. (HIREDATE.. 2022. 11. 7.
[Oracle] 숫자함수 이 름 의 미 사 용 예 ROUND 주어진 숫자를 반올림 한 후 출력함 ROUND(12.345,2) -> 12.35 TRUNC 주어진 숫자를 버림 한 후 출력함 TRUNC(12.345,2) -> 12.34 MOD 주어진 숫자를 나누기 한 후 나머지 값 출력함 MOD(12,10) -> 2 CEIL 주어진 숫자와 가장 근접한 큰 정수 출력함 CEIL(12.345) -> 13 FLOOR 주어진 숫자와 가장 근접한 작은 정수 출력함 FLOOR(12.345) -> 12 POWER 주어진 숫자1의 숫자2 승을 출력함 POWER(3,2) -> 9 ROUND() SELECT ROUND(987.654, 2) "ROUND1", ROUND(987.654, 0) "ROUND2", ROUND(987.654, -1) "ROUND.. 2022. 11. 3.
[Oracle] REPLACE() EX01 emp 테이블에서 아래와 같이 20 번 부서에 소속된 직원들의 이름과 3-4 번째 글자만 '-' 으로 변경해서 출력하세요 . SELECT ename, REPLACE(ename, SUBSTR(ename, 2, 2), '--') "REPLACE" FROM emp WHERE deptno = 20; EX02 Student 테이블에서 아래와 같이 1 전공(deptno1)이 101 번인 학생들의 이름과 주민등록번호를 출력하되 주민등록번호의 뒤 7자리는 ‘-’ 과 '/' 로 표시되게 출력하세요. SELECT name, REPLACE(jumin, SUBSTR(jumin, 7, 7), '-/-/-/-') "REPLACE" FROM student WHERE deptno1 = 101; EX03 Student 테이블.. 2022. 11. 3.
[Oracle] LPAD() LPAD(‘문자열’ 또는 컬럼명, 자리수 , ’채울문자’ ) emp 테이블을 deptno가 10 번인 사원들의 사원이름을 총 9 바이트로 출력하되 빈 자리에는 해당 자리의 숫자로 채우세요. SELECT lpad(ename, 9, '123456789') "LPAD" FROM emp WHERE deptno = 10; 2022. 11. 3.
[Oracle] to_char 시간표시 방법 오늘 날짜 제목으로 년도 4자리, 월2자리, 일2자리 형식으로 출력하시오 select to_char(sysdate, 'yyyy.mm.dd') from dual; 시간을 표시하는 방법을 :으로 하겠다는 뜻임 더미임 select to_char(sysdate, 'HH:MI') from dual; EX01 Student 테이블의 birthday 컬럼을 사용하여 생일이 1월인 학생의 이름과 birthday 를 아래 화면과 같이 출력하세요. SELECT studno, name, birthday FROM student WHERE to_char(birthday, 'MM')='01'; EX02 emp 테이블의 hiredate 컬럼을 사용하여 입사일이 1,2,3 월인 사람들의 사번과 이름, 입사일을 출력하세요. SELEC.. 2022. 11. 3.
728x90
반응형