JaeWon's Devlog
article thumbnail
[MYSQL] IN, EXISTS 절 활용하기
BackEnd/DataBase 2022. 8. 27. 13:07

1. EXISTS 절 - 결과로 TRUE, FALSE 를 반환하는 연산자. - 한 테이블이 다른 테이블과 외래키(FK)와 같은 관계인 경우 유용합니다. - 조건에 해당하는 ROW의 존재 유무 이후 더 수행하지 않는다. - 즉, 테이블 간의 결과를 어떤 값이 존재하는 지만 조회 할때 사용합니다. - 쿼리의 의도롤 고려했을 대 EXISTS 가 IN 에 비해 성능이 좋습니다.(그렇지 않을 경우, JOIN 활용) EXIST - 메인 쿼리 -> EXISTS 쿼리 순서로 진행 -- 기본 구문 SELECT * FROM table WHERE [NOT] EXISTS(subquery); 1-1. 예제 - 아래와 같이 간단하게 데이터를 만들고 확인해보겠습니다. SELECT * FROM STUDENT_TABLE; SELECT..

article thumbnail
[MySQL] on duplicate key update(Insert 시 값 존재하면 Update)
BackEnd/DataBase 2022. 7. 1. 16:06

테이블을 생성 시, 중복 저장을 막기 위해 다양한 컬럼에 Unique Key 를 등록한다.(Primary Key와는 다름) 이때, 데이터를 Insert 하는 경우, Unique Key 가 존재하는 값에 대해 실행하면 에러가 발생한다. 이러한 경우에 해당 row(데이터)를 Delete 후 다시 Insert 하는 방법도 있지만, 삭제에 대한 위험요소도 있다. 이때, on duplicate key update 를 사용하여 Unique Key 값이 있는 경우에 Insert 가 아닌 update를 해주는 방법이 있다. 1. Table(테이블) 생성 - 간단하게 테이블을 생성한다. //기존 테이블 삭제 DROP TABLE TEST_MEMBER; //테이블 생성 CREATE TABLE TEST_MEMBER ( mem..

article thumbnail
[Vue.js] Vue + SpringBoot + Mysql 를 이용한 Todo 구현(1) - 프로젝트 구성하기
FrontEnd/Vue.js 2022. 6. 6. 18:09

Vue + SpringBoot + Mysql 를 이용한 Todo 구현(2) - 프로젝트 환경 설정하기 Vue + SpringBoot + Mysql 를 이용한 Todo 구현(3) - Todo API 개발하기(1) Vue + SpringBoot + Mysql 를 이용한 Todo 구현(4) - Todo API 개발하기(2 Vue + SpringBoot + Mysql 를 이용한 Todo 구현(5) - Todo 화면 개발하기(1) - 컴포넌트 구성 Vue + SpringBoot + Mysql 를 이용한 Todo 구현(6) - Todo 화면 개발하기(2) - Vuex 적용 (끝) Vue + SpringBoot + Mysql 를 이용한 Todo 구현(7) - Todo 화면 개발하기(3) - 화면 개발 블로그를 하면서..

article thumbnail
[MySql] 데이터 정렬하기(한글 ->영문 순서)
BackEnd/DataBase 2021. 8. 28. 15:08

MySQL에서 데이터 정렬시 한글(자음) -> 영어(알파벳) 순으로 정렬이 필요했다. 1. 데이터 정렬 안한 데이터 상태 정렬 데이터 상태(한글(자음) -> 영어(알파벳)) 2. 쿼리 테이블에는 한글, 영어만 있다고 가정된다.(특수문자, 숫자 X) 정렬하고자 하는 컬럼(tag_name)의 첫 글자를 구하여, ASCII 코드 값을 구한다. ASCII 코드에서 영어는 65~122 이므로, 1번에서 구한 값 ASCII 코드 값이 123보다 작으면 영어로 판단. 영어 일시 순서를 2번째로 하고, 그 이외에는 첫번째(한글)로 한다. SELECT * FROM tag_info ORDER BY ( CASE WHEN ASCII(SUBSTRING(tag_name,1)) < 123 THEN 2 ELSE 1 END ), ta..