일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Spring Boot
- 맛집
- Gradle
- Web Server
- jenkins
- ReactJS
- MySQL
- linux
- java
- Oracle
- it
- ubuntu
- IntelliJ
- Git
- redis
- Spring Batch
- laravel
- 요리
- springboot
- Design Patterns
- db
- jsp
- Spring
- elasticsearch
- AWS
- php
- tool
- javascript
- JVM
- devops
- Today
- Total
목록Data Store (72)
아무거나
UPDATE ~ CASE 문: 한번의 UPDATE로 여러 작업을 할 수 있다. Desc - WHEN과 THEN은 하나의 조건이다. - WHEN과 THEN은 다수가 존재할 수 있습니다. - ELSE는 모든 조건에 부합하지 않을경우가 조건이다. Example Query 아래 그림과 같은 데이터를 기준으로 쿼리를 날려봅니다. UPDATE recursive_test_table SET parent_id = CASE WHEN parent_id = 1 THEN 10 WHEN parent_id = 2 THEN 20 WHEN parent_id = 3 THEN 30 WHEN parent_id = 6 THEN 60 ELSE parent_id END; 위의 3 Line을 예로 들면 parent_id가 1일 때 10으로 변경하..
비트연산자 비트 연산자는 논리 연산자와 비슷하지만, 비트(bit) 단위로 논리 연산을 수행합니다. 또한, 비트 단위로 전체 비트를 좌측이나 우측으로 이동시킬 때도 사용합니다. (연산자 우선순위대로 나열 &가 우선순위 1등) & (AND 연산): 대응되는 비트가 모두 1이면 1을 반환함. | (OR 연산): 대응되는 비트 중에서 하나라도 1이면 1을 반환함. ^ (XOR 연산): 대응되는 비트가 서로 다르면 1을 반환함. ~ (NOT 연산): 비트를 1이면 0으로, 0이면 1로 반전시킴. (Right Shift 연산): 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴. [Example] MySql에서 제공하는 필드의 수는 제한이 있고 필드가 너무 많아지면 관리비용이 늘어납니다. 또한 특정 ..
프로그램 : 푸시발송 서버(node)에서 레디스를 이용하는 부분스펙 : windows server 2012(aws), redis2.8.x, nodejs문제 : Redis config dir periodically modified to "/var/spool/cron" with "Failed opening .rdb for saving: Permission denied" error redis에서 퍼미션 관련 오류가 뜨는 경우가 있었다. ( redis.conf에서 dir : /var/spool/cron, dbfilename : root 로 변경되어 있었다. )그래서 CONFIG SET 명령어로 dir과 dbfilename을 디폴트값으로 변경해 주었다.그러나 하루가 지난다음에 위에 이슈대로 초기화되는 문제가 발생..
- 엑셀 수식으로 쿼리문 생성 ex) " insert into {Table} set b_seq='"&A2&"', b_name='"&B2&"', b_phone='"&C2&"', b_bank_code='"&D2&"', b_bank_accountnumber='"&E2&"', b_bank_depositprice='"&F2&"', b_bank_date='"&G2&"', b_description='"&H2&"', b_naver_id='"&I2&"', b_kakao_id='"&J2&"', b_area_type='"&K2&"', b_area_lat='"&L2&"', b_area_lng='"&M2&"', b_link='"&N2&"', b_dealarticle_type='"&O2&"' ; " 위에 부분을 빈 셀에 채워서 ..
삭제(DELETE) 하나의 쿼리로 여러 테이블의 데이터 삭제 Table Schema(Table Name: example_table) [user] [user_role] Example Code // user테이블의 user_id와 user_role의 user_id를 조인하여 삭제하자 DELETE u, ur FROM user AS u INNER JOIN user_role AS ur ON u.user_id = ur.user_id WHERE u.user_id = #{userId}
GROUP BY로 GROUPING한 필드말고 중복이 안되는 문자열들을 가진 필드의 문자열들을 합칠땐 GROUP_CONCAT을 사용 Table Schema(Table Name: example_table) Table Sample Data SELECT * FROM test_example; 콤마를 구분자로 한 결과값으로 합쳐져있는 문자열 도출(group_concat 기본 구분자는 콤마) SELECT name, GROUP_CONCAT(value) FROM test_example GROUP BY name; 임의의 구분자로 한 결과값으로 합쳐져있는 문자열 도출 SELECT name, GROUP_CONCAT(value SEPARATOR '|') FROM test_example GROUP BY name; 임의의 구분자로..
GROUPING을 하면서 다른 필드의 종류별 개수와 또 다른 필드의 숫자값을 모두 더한 값의 리스트를 도출하는 쿼리 Table Schema(Table Name: example_table) Table Sample Data SELECT * FROM example_table WHERE brand = '4엑스알'; brand 필드 기준으로 해당 필드를 grouping 하면서 mall_id의 count와 require_cnt의 값을 더한 총 count의 리스트를 구한다. SELECT wbmr.brand, wbmr.mall_cnt, wbmr.require_total_cnt FROM ( SELECT brand, COUNT(mall_id) AS mall_cnt , SUM(require_cnt) AS require_to..
hierarchy 구조에서 recursive 쿼리의 사용 Desc hierarchy: 계층 recursive: 재귀 Example hierarchy 구조의 샘플 데이터 생성 CREATE TABLE recursive_test_table ( id INTEGER NOT NULL, name VARCHAR(128) NULL, parent_id INTEGER NULL, CONSTRAINT pk_recursive PRIMARY KEY (id) ); INSERT INTO recursive_test_table (id, name, parent_id) VALUES (1, '봉근', NULL); INSERT INTO recursive_test_table (id, name, parent_id) VALUES (2, '봉근 A',..
UPSERT(INSERT ON DUPLICATE KEY UPDATE): 동일한 key값이 존재한다면 UPDATE를 하고 존재하지 않는다면 INSERT를 한다. (단, INSERT 구문이므로 AUTO_INCREMENT 값은 증가한다) Table Sample Data Example Code // UNIQUE 값: login_id // login_id인 jbk값이 존재하므로 아래 코드는 update가 실행된다. INSERT INTO user (active, login_id, user_name, `password`) VALUES (3, 'jbk', 'insert_name', 'insert_$2a$10$2Rbln4H8JGnnQnqKwvNBEAlX6') ON DUPLICATE KEY UPDATE active=4, ..
JSON (Json을 지원하는 데이터 타입은 MySQL 5.7.8부터 사용이 가능하다. 해당 포스팅은 VARCHAR에 데이터는 JSON STRING형태의 예제이다. 즉, JSON 데이터 타입 고려안하고 작업) 조회 필드 속성이 VARCHAR에 데이터는 JSON형태 일 때 조회 방법 [필드 속성] `vendor_category_info` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL; [조회 쿼리] SELECT vendor_category_info , JSON_UNQUOTE( JSON_EXTRACT(vendor_category_info, '$.depth1') ) AS VENDOR_DEPTH1 , JSON_UNQUOTE( JSON_EXTRACT(vendor_categ..