# mssql
GROUP BY, HAVING
집계 함수와 함계 많이 사용되는 절이 GROUP BY 절이다.예를 들면, 어떤 테이블에 카테고리 분류 열이 있다면 각 카테고리별로 그룹을 만들 수 있다.각 카테고리별로 그룹을 묵으면 그룹별 편균 등을 집계하기 좋다.GROUP은 결국 특정 컬럼을 기준으로 집계를 낸다는

Microsoft SQL Server T-SQL
RDBMS는 데이터를 관리하고 저장하는 데 사용되는 소프트웨어다.데이터를 테이블로 구성하고 각 테이블은 다른 테이블과 관계를 맺음으로써 생기는 관계에 의해 데이터를 구성하고 관리할 수 있다.RDMS는 Oracle, MySQL, PostgreSQL 등 여러 종류가 있는데

MSSQL 언어 설정
SQL을 작성하는데 자꾸 한국어로 바뀔때가 있다여러번 반복되면 은근 거슬리고 짜증나는데 그럴땐 언어를 변경해주면 된다. (컴퓨터 다시시작해야함)옵션 > 국가별 설정 > 언어 : English
MSSQL 계정 암호 관련 확인 쿼리
SQL 로그인 계정 비밀번호 변경 일시 확인 쿼리SELECT name --//이름 , LOGINPROPERTY ( name , 'IsExpired' ) AS IsExpired --//만료 상태 확인( 0 : 정상 ) , LOGINPROPERTY ( name , 'IsL
MSSQL 날짜 차이 구하기
예를 들어 2023-03-10 00:00:00 데이터를 2021-05-58 14:57:21 로 수정해달라와 같은 요청이 있다면DATEADD(D, -X, '날짜')를 사용할 수 없고그렇다고 손으로 하기에는 1건이 아니라 여러건일 경우엔 DATEDIFF 함수를 사용하면 된
MSSQL 날짜 형식 변환
\|\|:-:\|:-:\|:-:\|:-:\||1|select convert(varchar, getdate(), 1)|mm/dd/yy|12/30/22||2|select convert(varchar, getdate(), 2)|yy.mm.dd|22.12.30||3|selec

[MSSQL] MSSQL JDBC Driver 환경에서 테이블에 VARCHAR 타입을 사용한다면?
문제상황 프로젝트 중 특정 쿼리에서 성능이 크게 떨어지는 문제가 생겼다. 인덱스도 잡혀있고, 데이터의 양도 그렇게 많지 않았다. 게다가 더 알 수 없는 점은, > DB툴(SSMS)에서 해당 쿼리를 돌렸을 때는 성능 저하가 발생하지 않았다는 점이다. 실제 쿼리는 느리지
[MSSQL]쿼리문 가로로 조회
여러 컬럼별로 일자 지정하여 'Partition By' 테이블 분할함수를 사용하여 가로로 데이터 조회 하는 쿼리

[MSSQL] 계정 권한부여 오류
master권한 계정으로 접속하여 해당 쿼리를 실행하여 확인 위 쿼리를 실행하여 어떤 계정명이 조회되는지 확인 1에서 조회한 계정명을 '계정명'에 넣어서 쿼리 실행

[MS SQL] 작업 스케줄러 이용 배치(.bat) 파일 실행하기
저번 시간에는 SQL Server 에이전트를 이용한 스케줄링 작업을 해보았는데, 이번 시간에는 Windows 작업 스케줄러를 이용하여 배치 파일을 실행하여 테이블의 데이터를 업데이트 방법에 대해 알아보겠습니다. 스케줄러를 통해 프로시저를 실행하여 테이블의 데이터를 업
SQL 주요 JOIN 방식
JOIN 방식크게 해시 조인, 머지 조인, 중첩 루프 조인으로 분류 가능DBMS가 자동으로 선택하거나 사용자가 직접 선택가능해시 조인hash값을 사용해 변환 후 일괄적으로 비교 => 빠른 성능 기대가능적절한 인덱스가 없을 때 주로 활용수행 빈도가 낮고 시간이 오래 걸리
트랜잭션 격리수준
DBMS에서는 여러 사용자가 동시에 같은 데이터를 조회 or 수정할 수 있다. 이런 경우 신뢰성에 문제가 생길 수 있어서 DBMS는 LOCK을 활용해서 충돌 문제를 예방 또는 해결 > 트랜잭션 격리수준(Isolation level) > DBMS설정에 따라 6가지 LO
사용자 함수
사용자 함수SUM, COUNT와 같은 표준 함수 외에 원하는 기능을 직접 프로그래밍하여 작성가능함 -> 단순화, 표준화, 성능 및 트래픽 개선 기대효과저장프로시저에 비해서 기능 제약(필요한 경우에만 사용 권장)직접 INSERT/UPDATE/DELETE 등 불가능따라서
저장 프로시저
저장 프로시저일반적인 프로그래밍 언어에 준하는 기능을 구현 할 수 있는 강력하고 확장성과 활용도가 높은 영역여러단계를 하나의 프로시저로 묶음\-> 코드형태로 포함되어서 미리 컴파일되어 속도가 빠름\-> 단순해짐\-> SQL명령어가 노출되지 않아서 보안에도 유리다른 프로
커서
커서불가피하게 한꺼번에 처리를 하지 못하고 한 행씩 처리해야 하는 경우가 발생할 때 제공하는 기능.db자체에서 커서를 이용하면 웹에서 처리가 필요없어 웹소스가 간편해짐주의점 : 커서사용이 끝나고 난 후에는 커서를 닫아주고 메모리에 있는 자료들을 정리해줘야 한다. =>