728x90
반응형

DB 229

[DB][Oracle] PL/SQL 블록을 사용하여 한번에 insert 하기

SET @TNT = (SELECT TENANT_CD FROM SYS_COMPANY LIMIT 1);MysQL 에선 변수를 세팅해서 한번에 Insert 문을 쓸 때 사용했는데,Oracle에서 변수를 사용할 수 없기 때문에 직접 변수를 사용하는 방식(@TNT)을 사용할 수 없습니다.대신, 변수를 사용할 필요가 있는 경우 PL/SQL 블록을 사용하거나 다른 방법으로 값을 전달해야 합니다.DECLARE v_tenant VARCHAR2(20) := 'TENANT1';BEGIN INSERT INTO SYS_CODE_CLS SELECT v_tenant, 'col1', 'col2', 1, 'col3', 1, NULL, NULL, 0, 1, 'col4', CURRENT_TIMESTAMP, 'col5', ..

DB 2024.07.17

[DB][DBeaver][Oracle] 테이블 컬럼 순서 변경하기

Oracle Database는 기본적으로 테이블 컬럼 순서를 직접 변경하는 명령어를 제공하지 않기 때문에, 테이블을 재구성하는 방법을 사용해야 합니다. 1. 새 테이블 생성: 먼저, 기존 테이블과 동일한 구조를 가지면서 컬럼 순서만 변경된 새로운 테이블을 생성합니다. 2. 데이터 복사: 기존 테이블의 데이터를 새 테이블로 복사합니다. 이 때, 컬럼의 순서를 원하는 대로 조정합니다. 3. 기존 테이블 삭제: 데이터가 성공적으로 복사되었는지 확인한 후, 기존 테이블을 삭제합니다. 4. 새 테이블 이름 변경: 새 테이블의 이름을 기존 테이블의 이름으로 변경합니다.

DB 2024.07.16

[DB][SQL] GROUP BY 절에 CASE문을 Alias로 사용할 수 없는 현상의 대안

Subquery를 사용한 대안 방법또 다른 방법으로는 서브쿼리를 사용하는 것입니다. 서브쿼리를 사용하면 별칭을 활용할 수 있습니다.SELECT age_group, COUNT(*) AS countFROM ( SELECT CASE WHEN age 이 방법을 사용하면 CASE 문을 서브쿼리 내에서 한 번만 작성하고,메인 쿼리의 GROUP BY 절에서 별칭 age_group을 사용할 수 있습니다.이는 코드의 가독성을 높이고 유지보수를 용이하게 합니다.

DB 2024.07.07

[DB][SQL] GROUP BY절 안에 CASE

GROUP BY 절 안에 CASE 문을 사용하는 이유는 데이터를 그룹화할 때 특정 조건에 따라 다른 그룹으로 묶기 위해서입니다. 이는 데이터를 보다 유연하게 그룹화하고 분석할 수 있게 해줍니다. CASE 문을 사용하면 다양한 조건에 따라 데이터의 그룹화 기준을 동적으로 변경할 수 있습니다.사용 이유조건에 따른 그룹화: 특정 조건을 기준으로 데이터를 그룹화하여 원하는 방식으로 데이터를 분류할 수 있습니다.복잡한 그룹화 로직: 단순한 열 값이 아닌, 복잡한 논리적 조건을 사용해 데이터를 그룹화할 수 있습니다.데이터 가공 및 변형: 그룹화하기 전에 데이터를 변형하거나 가공할 수 있습니다.사례다음은 CASE 문을 사용하여 데이터를 그룹화하는 예제입니다.예제 : 연령대별 그룹화고객의 나이를 연령대별로 그룹화하는 ..

DB 2024.07.06

[DB][SQL] ORDER BY 절 안에 CASE문

ORDER BY CASE WHEN M.CUST_CD = 'etc' THEN 1 ELSE 0 END ASC  https://developernh.tistory.com/7 [SQL] ORDER BY에서 CASE문 사용SQL의 ORDER BY절에서 CASE문을 사용하는 방법을 정리해보겠다. 일반적으로 정렬을 할때 ORDER BY절을 사용한다. 보통 컬럼의 값을 통해 정렬이 진행되는데 ASC로 정렬할 경우 오름차순 DESC로 정렬할 경developernh.tistory.com case 문으로 조건을 걸어서 해당조건에 숫자를 지정해서그 숫자로 오름차순 정렬할지 내림차순 정렬할지 설정해줄 수 있다.

DB 2024.07.05

[MyBatis] 요소 콘텐츠는 올바른 형식의 문자 데이터 또는 마크업으로 구성되어야 합니다.

https://velog.io/@chiyongs/Mybatis-%EC%9A%94%EC%86%8C-%EC%BD%98%ED%85%90%EC%B8%A0%EB%8A%94-%EC%98%AC%EB%B0%94%EB%A5%B8-%ED%98%95%EC%8B%9D%EC%9D%98-%EB%AC%B8%EC%9E%90-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%98%90%EB%8A%94-%EB%A7%88%ED%81%AC%EC%97%85%EC%9C%BC%EB%A1%9C-%EA%B5%AC%EC%84%B1%EB%90%98%EC%96%B4%EC%95%BC-%ED%95%A9%EB%8B%88%EB%8B%A4 [Mybatis] 요소 콘텐츠는 올바른 형식의 문자 데이터 또는 마크업으로 구성되어야 합니다.Cause: org.xm..

DB 2024.07.01

[DB][MySQL] GROUP_CONCAT

GROUP_CONCAT 함수는 SQL에서 여러 행의 값을 단일 문자열로 결합하는 데 사용됩니다. 이 함수는 주로 MySQL에서 사용되며, 특정 컬럼의 값들을 그룹별로 하나의 문자열로 연결할 때 유용합니다.GROUP_CONCAT(expression [ORDER BY ...] [SEPARATOR 'separator_string'])  expression: 결합할 컬럼이나 표현식입니다.ORDER BY: (선택사항) 연결된 값들을 정렬할 기준입니다.SEPARATOR: (선택사항) 기본적으로 쉼표(,)가 구분자로 사용되지만, 다른 구분자를 지정할 수 있습니다. https://hungseong.tistory.com/96 [MySQL] GROUP_CONCAT으로 grouping 한 결과를 한줄로 출력하기1. 알고자 ..

DB 2024.06.26
728x90
반응형