MySQL3 MySQL | SUBSTRING_INDEX로 문자열 자르기 🍿 요구사항 (Requiredments) 기존 테이블에서 컬럼을 새로 추가하고, 하나의 컬럼을 기준으로 문자열을 2가지로 나누려고 합니다. 새로 추가한 컬럼을 마이그레이션 하려고 합니다. 🍑 해결방안 (Solution or Next step) SUBSTRING_INDEX 사용방법 SUBSTRING_INDEX(문자열, 구분자, 구분자 인덱스) 예시코드 SELECT column_name, SUBSTRING_INDEX(column_name, 'F', 1), SUBSTRING_INDEX(column_name, '_', -1) FROM table_name column_name: 해당 컬럼 명을 넣어주세요. table_name: 해당 테이블 명을 넣어주세요. 🥦 회고 (Retrospective) Java로 매번 s.. 2021. 12. 6. MySQL | GROUP BY와 HAVING으로 컬럼 중복값 찾기 😏 요구사항 (Requiredments) 처음부터 테이블을 잘 만들어두면 좋겠지만, 시스템이나 서비스를 오랜 기간 운영하다 보면 컬럼을 변경할 일이 생길 수 있습니다. 유니크 인덱스(UNIQUE INDEX)는 컬럼에 중복된 값이 포함되어 있으면 생성할 수 없습니다. 이번에 컬럼을 변경하면서, 유니크 인덱스를 걸어두어도 괜찮을지 고민하던 차에 기존 데이터에 중복값이 있는지 확인하려고 합니다. 😚 해결방안 (Solution or Next step) 저의 경우에는 찾고자 하는 조건 컬럼이 3개여서 다음과 같이 사용했습니다. SELECT a_column, b_column, c_column, count(1) AS cnt FROM table_name GROUP BY a_column, b_column, c_colum.. 2021. 12. 5. MySQL/MyBatis | 동적 쿼리(Dynamic Query) 사용하기 🍰 요구사항 (Requirements) A라는 서비스에 해당하는 테이블들을 조인하여 조회하는 기능에 사용 중입니다. 추후 공통화를 위해 B, C 서비스도 추가될 예정입니다. A, B, C 서비스 모두 하나의 쿼리에서 작업할 수 있도록 공통화 작업을 해야 합니다. 테이블은 필수로 사용되는 all_hist, 각 서비스에 해당하는 a_request, a_response, b_request, b_response, c_request, c_response가 있다고 가정합니다. 🏰 해결방법 (Solution or Next step) DTO에 flag가 되는 변수가 있다면 SQL문 FROM 절에 해당 변수를 체크하는 조건을 추가해주면 됩니다. ReqDTO에 flag 역할을 하는 type이라는 변수가 있다고 가정합니다... 2021. 10. 2. 이전 1 다음