728x90
반응형

현재 프로젝트에서는 DB를 MSSQL을 사용하고 있고 Tool은 DBEAVER를 쓰고 있는데 가끔 단축키가 기억 안 나 아쉬을 때가 있다. 유용한 단축키를 아래와 같이 정리해본다. 전체 단축키는 2번을 참고하시라.

 

1. 유용한 단축키

alt + shift + a : 열편집

단축키를 클릭하면 화면이 살짝 커지면서 열편집 화면으로 전환이 된다.
이때 마우스로 원하는 열을 드래그하면 해당 열이 선택되고 문자 삽입삭제등 다양한 작업을 선택한 모든 열에 적용할 수 있다. 다만 한글인 경우 쿼리가 삭제되는 오류가 있으니 문자 입력시 꼭 영문자로 입력해야한다.
열편집화면에서 나오고 싶을때도 동일한 단축키를 눌리면 된다.

 

ctrl + shift + x : 대문자

블록을 지정한 뒤 단축키를 누르면 블록안의 모든 문자는 대문자로 바뀐다.

 

ctrl + shift + y : 소문자

블록을 지정한 뒤 단축키를 누르면 블록안의 모든 문자는 소문자로 바뀐다.

 

Ctrl + /

주석 및 해제 -- 를 통한 주석

 

Ctrl + Shift + /

주석 및 해제 /**/ 를 통한 주석

 

Ctrl + D

현재 라인 삭제

 

Ctrl + Shift + Up(↑)/Down(↓)

현재 라인 상/하로 이동

 

Ctrl + Shift + Enter

포커스는 고정이 되면서 라인이 추가

 

Ctrl + Alt + Up(↑)/Down(↓)

현재 라인 복사

 

 

2. DBEAVER에서 제공하는 단축키 모음

https://dbeaver.com/docs/dbeaver/Shortcuts/

728x90
반응형
728x90
반응형

DBeaver에 푹 빠져살고 있는 요즘입니다.

DBeaver에서 세팅된 기본 SQL실행 단축키는 아래와 같이 Ctrl+Enter 입니다.

MSSQL 을 사용하시는 분들은 F5로 불편함이 많으실 텐데요, 참지 말고 아래의 방법으로 변경해봅시다.

윈도우 > 설정으로 들어가셔서

User Interface > 키 > SQL문 실행의 아래 바인딩 부분을 원하는 키로 변경하면 됩니다.

참고로 이전 프로젝트에서는 MSSQL을 사용하고 있고 DBeaver에서 SQL 실행키를 ​F5로 변경해서 사용하고 있답니다.

불편한건 고쳐서 사용하자!

 

728x90
반응형
728x90
반응형

 

Microsoft SQL Server에서 계층적 데이터를 쿼리하기 위해 "Connect by"와 유사한 방법은 CTE(Common Table Expression)와 재귀 쿼리(Recursive Query)를 사용하는 것입니다. CTE 및 재귀 쿼리를 사용하면 계층적 데이터를 다루는데 효과적입니다. 아래에 간단한 예제를 제시하겠습니다.

먼저, 다음과 같은 예제 데이터를 사용하겠습니다.

CREATE TABLE Employees

(

EmployeeID INT PRIMARY KEY,

EmployeeName NVARCHAR(50),

ManagerID INT

);

INSERT INTO Employees (EmployeeID, EmployeeName, ManagerID)

VALUES (1, 'John', NULL),

(2, 'Alice', 1),

(3, 'Bob', 1),

(4, 'Charlie', 2),

(5, 'David', 2),

(6, 'Eve', 3);

이제 CTE와 재귀 쿼리를 사용하여 계층적 데이터를 쿼리하는 방법을 보여드리겠습니다.

-- 재귀 CTE를 사용하여 계층적 데이터를 쿼리합니다.

WITH EmployeeHierarchy AS

(

SELECT EmployeeID, EmployeeName, ManagerID, 0 AS Level

FROM Employees

WHERE ManagerID IS NULL

UNION ALL

SELECT e.EmployeeID, e.EmployeeName, e.ManagerID, eh.Level + 1

FROM Employees e

INNER JOIN EmployeeHierarchy eh ON e.ManagerID = eh.EmployeeID

)

SELECT EmployeeID, EmployeeName, ManagerID, Level

FROM EmployeeHierarchy

ORDER BY Level, EmployeeID;

위의 쿼리는 계층적 데이터를 계층 수준(Level)에 따라 정렬하여 출력합니다. 재귀 CTE를 사용하면 계층 구조를 탐색하면서 데이터를 가져올 수 있습니다.

이 코드에서:

첫 번째 부분은 루트 노드(ManagerID가 NULL)의 데이터를 선택합니다.

두 번째 부분은 재귀적으로 EmployeeHierarchy CTE와 Employees 테이블을 조인하여 계층 구조를 탐색합니다.

최종 결과는 계층 수준(Level)에 따라 정렬된 계층적 데이터를 반환합니다.

이것이 SQL Server에서 "Connect by"와 유사한 방법으로 계층적 데이터를 쿼리하는 방법입니다. 계층 구조가 있는 데이터를 다룰 때 매우 유용한 기술입니다.

728x90
반응형

'DB' 카테고리의 다른 글

유용한 DBEAVER 단축키 모음  (1) 2024.04.29
[DBeaver] SQL실행 단축기 변경  (2) 2023.12.31

+ Recent posts