본문 바로가기

DB관련/mysql

(10)
Bulk Insert - Insert 쿼리 최적화 oracle 이나 MySql과 같은 개발환경을 사용하여 개발을 했을때 다량의 데이터를 생성해야 될 때가 있다. Bulk Insert는 편하고 빠르게 다수의 건의 데이터를 넣을때 사용된다. 예시와 함께 MySql을 기준으로 설명을 해보겠다. 1. 테이블 생성 CREATE TABLE BULK_INSERT_SAMPLE (A int, B int, C int); insert 구문을 한건씩 사용하게 된다면 생성이 필요한 개수만큼 쿼리를 실행하게 된다. 하지만 쿼리를 반복하는 만큼 실행하는 것은 자원을 많이 소모하는 작업이며, 작업시간도 조금 더 소요될 수도 있다. 또 도중 Connection에 문제가 생긴다면 그에 따른 문제가 생길 수도 있다. insert into BULK_INSERT_SAMPLE VALUES(1..
IF 문 기본문형 IF(조건문, 참일때의 값 , 거짓일때의 값) 예시) SELET name, IF(1>2, 1 ,2 ) FROM table; 그럼 name 과 2를 선택
시저 암호 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 class Solution { public String solution(String s, int n) { String answer = ""; char[] charArray = s.toCharArray(); StringBuilder sb = new StringBuilder(); for(int i =0; i='a' && charArray[i]='A' && charArray[i]='A' && ch'Z') ch = (char)(ch+n-26); else ch=(char)(ch+n); }else answer += (char)ch; sb.append(ch); } answer= sb.toString(); return..
mysql jdbc 이용한 예제 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 import java.sql.*; import java.util.ArrayList; import java.util.List; public class BusinessCardManagerDao { private static String dbUrl = "jdbc:mysql://localhost:3306/businesscard?serverTimezone=UTC"; private static String dbUser ..
DDL create 테이블을 생성할 때 ex)create table 테이블명 ( 필드명1 타입 ,필드명2 타입 ,..... ); alter 테이블을 수정할 때 사용 --칼럼을 추가할 때 ex) alter table 테이블명 add 필드명 타입 --칼럼을 삭제할 때 ex) alter table 테이블명 drop 필드명; --칼럼을 수정할 때 ex) alter table 테이블명 chage기존필드명 새필드명 타입 --테이블 이름 수정 ex)alter talbe 테이블명 rename 새이름 drop 테이블 삭제시 ex)drop table 테이블명 주의! foreign key로 테이블이 사용될 시 제약조건이 발생. 이때는 테이블 삭제순서에 유의해야 함 fk사용하는 테이블 먼저 삭제 필요
mysql -- join 조인의 종류 및 공식 조인의 기본형태 from 테이블1 join 테이블2 on 조건 inner join == 두 테이블에서 공통된 값을 뽑기 ex) select 검색 요소 from TABLE1 inner join TABLE2 on TABLE1 칼럼 = TABLE2 칼럼 주의! == 이때 A칼럼과 B칼럼은 같아야 한다. ex) select 검색요소 from A,B where A.a ==B.a 이걸로도 가능하다. left (outer) join == 왼쪽 테이블만의 요소 + 왼쪽과 오른쪽 공통 요소 ex)select 검색요소 from TABLE1 left outer join TABLE2 on TABLE1 칼럼 = TABLE2 칼럼 right (outer) join == 오른쪽 테이블만의 요소 + 오른쪽과 왼..
DML - insert, update ,delete inert into 테이블명(필드1, 필드2,.....) values(필드1의 값, 필드의 값2,....); 주의! 필드와 값을 다 정해진 타입으로 매핑해야함 inser into 테이블명 values (필드1, 필드2,.....) 주의! 이때는 필드의 값을 다 기입해야 함 update 테이블명 set 필드1= 값, 필드2=값,... where 조건 주의! 조건이 없으면 전체 수정 delete from 테이블 where 조건 주의! 조건이 없으면 전체 삭제
DML -함수 substring(글자,시작 인덱스, 보여줄 글자) ex) SELECT SUBSTRING('happy',3,2); == happy에서 3번째 인덱스에 해당하는 첫번째 p 부터 2글자 출력 == pp 주의! mysql에서는 인덱스 시작 번호가 1이다. trim('남길 문자열') | trim(BOTH '제거할 문자' FROM '문자열') ex) select trim(both 'x' from 'xxxxxxhixxxx'); == hi cast(ㅁ as ㅇ) ex) select now(); == 2020-11-24 23:13:18 ex) select cast(now() as date); ==2020-11-24 ex) select cast(1-2 as signed) == -1 count(칼럼) ex) select ..