일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 기업 협업
- ROLLUP
- 자료구조
- sql 저장 모듈
- simple case expression
- JavaScript
- window 함수
- searched case expression
- list multiplication
- 정보처리기사
- SQLD
- Node.js
- Oracle
- 뷰
- 정규식 연산
- 문법 차이
- 코드 스니펫
- dom
- dense rank
- 위코드
- coalesce
- 비절차적 데이터 조작어
- html
- SQL
- GROUPING
- execute immediate
- MYSQL
- python
- git
- show graph characteristics
- Today
- Total
목록프로그래밍_인포/데이터베이스&SQL (26)
프로그래밍 숲
프로젝트를 하던 중, 고객 정보가 들어간 더미데이터를 만들 필요가 있었습니다. 그래서 어떻게 간편하게 많은 더미데이터를 만들까 하다가 SQL의 프로시저를 활용해서 더미데이터를 만들어 보기로 했습니다. ✏️ 파이썬 Faker 라이브러리로 한국 이름 랜덤 생성하기 한국 사람의 이름 같은 경우, 프로시저를 이용해서 랜덤으로 구현하기가 어려워서 파이썬의 Faker 라이브러리를 통해 간편하게 만들었습니다. 만드는 방법은 다음과 같습니다. from faker import Faker fake = Faker('ko_KR') name_list = [] for _ in range(100): name_list.append(fake.name()) names = ','.join(name_list) print(names) 터미널..

DataGrip에서 DB Diagram 화면에서 특정 데이터베이스에 우클릭을 하면 "Analyze Graph"의 "Show Graph Characteristics"라는 항목이 나오게 됩니다. 이를 사용하면, 특정 데이터베이스 테이블에 대한 그래프 구조를 분석하고 그 특성을 이해하는데 도움이 됩니다. 각 항목에 대해 간단히 설명하겠습니다. 1. Common Node Count: 그래프의 노드(데이터 포인트)의 총 개수입니다. Edge Count: 그래프의 간선(노드 간의 연결)의 총 개수입니다. Contains Self-loops: 그래프가 자기 자신으로 돌아오는 간선(셀프 루프)을 포함하는지 여부입니다. Is Simple: 간단한 그래프인지, 즉 모든 노드 간에 최대 한 개의 간선만 있는지 여부를 나타냅..
ISNULL vs NVL SQL에서 ISNULL과 NVL은 둘 다 NULL 값을 처리하기 위한 함수입니다. 하지만 각각은 서로 다른 DBMS에서 사용되는 문법입니다. ISNULL 함수 ISNULL 함수는 Microsoft SQL Server에서 사용되는 함수입니다. 이 함수는 첫 번째 매개변수가 NULL이면 두 번째 매개변수를 반환하고, NULL이 아니면 첫 번째 매개변수를 반환합니다. 일반적인 문법은 다음과 같습니다: ISNULL(expression, replacement) 예를 들어, 다음 쿼리는 Customers 테이블에서 City 열이 NULL인 경우 'Unknown'을 반환합니다 SELECT ISNULL(City, 'Unknown') FROM Customers; NVL 함수 NVL 함수는 Ora..
Case expressions은 프로그래밍 언어나 SQL 쿼리에서 사용되는 조건문의 형태입니다. Case expressions은 조건에 따라 다른 값을 반환하는 데 사용됩니다. 여기서 "searched case expression"과 "simple case expression"은 두 가지 다른 형태의 case 표현식을 의미합니다. 이제 각각의 형태에 대해 자세히 알아보겠습니다. 1. Searched Case Expression Searched case expression은 다음과 같은 구문을 가집니다. CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE result END 각 WHEN 절은 조건을 정의하고, 조건이 참일 때 해당..
SQL 저장 모듈(Stored Module) SQL 저장 모듈은 데이터베이스 시스템에서 사용되는 기능들의 집합입니다. 이 모듈은 데이터베이스 개발자나 관리자가 데이터의 구조, 조작, 유지보수 등을 더욱 효율적으로 수행할 수 있도록 도와줍니다. 이 중심에는 프로시저(Procedure), 사용자 정의 함수(User-Defined Function, UDF), 트리거(Trigger)라는 세 가지 요소가 있습니다. 프로시저(Procedure) 프로시저는 SQL 문의 논리적인 블록으로, 일련의 SQL 문을 순차적으로 실행하는 저장 프로그램입니다. 프로시저는 특정 작업을 수행하기 위해 사용되며, 매개변수를 받을 수 있고 결과를 반환할 수도 있습니다. 프로시저는 주로 데이터의 입력, 갱신, 삭제 등과 같은 복잡한 데이..
PL/SQL이란? PL/SQL(Procedural Language/Structured Query Language)은 프로그래밍 언어로서 데이터베이스와 상호작용하기 위해 사용되는 언어입니다. PL/SQL은 SQL을 기반으로 하며, 데이터베이스 객체를 생성하고 관리하는 기능을 제공합니다. PL/SQL은 주로 Oracle 데이터베이스 시스템에서 사용되며, 데이터베이스 관리, 데이터 조작, 프로시저 및 함수 작성 등 다양한 작업을 수행할 수 있습니다. 예를 들어, 학생 데이터베이스를 관리하는 시스템을 만들어야 한다고 가정해 봅시다. PL/SQL을 사용하여 이 작업을 수행할 수 있습니다. 테이블 생성: 우리는 학생 데이터를 저장하기 위한 테이블을 생성해야 합니다. PL/SQL을 사용하여 데이터베이스에 테이블을 생..
윈도우 함수란? 윈도우 함수는 SQL에서 제공하는 강력한 도구로서, 데이터셋 내의 '윈도우' 라고 부르는 행 집합에 대한 다양한 계산을 수행할 수 있게 해줍니다. 윈도우 함수는 대개 집계 함수와 유사하게 동작하지만, 전체 쿼리에 대한 결과를 출력하는 대신에 각 행이 속하는 윈도우에 대한 결과를 출력합니다. 윈도우 함수는 OVER 절을 사용하여 윈도우를 정의합니다. 이 OVER 절 내에서는 PARTITION BY, ORDER BY, 그리고 ROWS 또는 RANGE 키워드를 사용하여 윈도우를 어떻게 분할하고 정렬하고 범위를 정의할지를 명시할 수 있습니다. 윈도우 함수의 세 가지 종류 RANK(), DENSE_RANK(), ROW_NUMBER() 모두 SQL의 윈도우 함수입니다. 이 세 함수는 윈도우 내에서 ..
GROUPING이란? SQL에서 GROUP BY는 데이터를 특정 열 또는 열 그룹에 따라 그룹화하는 데 사용되는 문장입니다. 그룹화 기능은 그룹별로 요약 통계를 제공하는 데 유용합니다. 다만, GROUPING이라는 기능은 GROUP BY와 함께 사용되는 특수한 함수로, 이는 SQL Server, Oracle 등 일부 DBMS에서 지원합니다. GROUPING 함수는 GROUP BY 절에 ROLLUP 또는 CUBE를 함께 사용하여 데이터를 그룹화할 때 사용됩니다. 이 함수는 슈퍼 총계 행(즉, ROLLUP 또는 CUBE 연산의 결과)인지 아닌지를 판별합니다. 슈퍼 총계 행이면 GROUPING 함수는 1을 반환하고, 그렇지 않으면 0을 반환합니다. GROUPING 예시 각 고객별로 주문한 총 상품 수량을 그룹..
큐브 그룹 함수(Cube Group Function)는 SQL에서 사용되는 집계 함수 중 하나입니다. 이 함수는 다차원 데이터를 다양한 방식으로 집계하는 데 사용됩니다. 큐브 그룹 함수를 사용하면 여러 열의 조합에 따라 다차원 데이터를 집계할 수 있으며, 결과는 각 조합에 대한 집계 값의 조합으로 표시됩니다. 큐브 함수 이름의 유래 "CUBE"라는 이름의 큐브 그룹 함수는 그룹화된 데이터를 다차원으로 분석하는 개념에서 유래했습니다. 이 함수는 다차원 큐브(Cube)와 유사한 방식으로 데이터를 집계합니다. 큐브(Cube)는 다차원 데이터를 나타내는 개념으로, 각 차원의 값에 따라 데이터를 조합하여 분석할 수 있는 구조입니다. 큐브는 세 개 이상의 차원을 가질 수 있으며, 각 차원은 특정 속성이나 카테고리를..
SQL의 ROLLUP 연산자는 GROUP BY 절과 함께 사용되며, 이를 통해 여러 차원에 대한 합계, 평균, 카운트 등의 데이터 집계가 가능합니다. 간단히 말하면, ROLLUP은 결과 집합의 하위 집합을 생성하고 추가적인 행을 추가하여 이 집합의 합계 또는 다른 집계를 제공합니다 ROLLUP 이름의 의미 "롤업(roll up)"이란 이름은 마치 이러한 계층적 구조를 "롤업"하는 것처럼 생각할 수 있습니다. ROLLUP은 명시된 그룹화 컬럼의 순서에 따라 작동하며, 이를 통해 다른 수준의 집계 데이터를 제공합니다. 가장 세부적인 수준에서 시작하여 가장 일반적인 수준까지 집계 데이터를 "롤업"하는 것을 나타냅니다. 또한, 이 연산자의 이름은 계층적인 구조를 이루는 데이터를 다루는 방식을 비유적으로 설명하기..