본문 바로가기
728x90

DataBase6

SQL - (MSSQL) CONCAT_WS의 사용법 / 컬럼 합치기 CONCAT_WS를 이용하여 컬럼 조회시 특정 문자를 추가 하여 조회 결과를 이어붙일 수 있습니다. 컬럼 조회시 결과를 미리 이어붙여서 반환할 경우에 유용하게 사용이 가능합니다 SQL Server 2017부터 사용이 가능합니다. 사용 형식 값/컬럼은 최소 2개이상은 써야 하며 굳이 컬럼을 쓰지 않고 varchar, nvarchar 형식을 넣어서 사용해도 됩니다. select concat_ws({문자 분할 구분자}, {값/컬럼 1}, {값/컬럼 2}, {값/컬럼 1}, ...) from dbo.table 사용 예시 1 select concat_ws(' , ', food, score, chef) from dbo.table 사용 예시 2 select concat_ws(N' 점수는 ', chef, score) .. 2021. 8. 18.
SQL - (MSSQL) partition by 사용법, 부분집계처리 쿼리를 사용시 Group by를 특정컬럼에 부분적으로 사용해야 할 필요가 있을 때가 있는데 집계함수와 partition by를 이용하면 손쉽게 특정컬럼에 Group by처리를 할 수 있습니다. Example Data 집계함수의 Partition by sum, avg, count.. 등 집계함수의 기능은 기존에 쓰는 기능이랑 동일하며 partition by로 chef를 묶은 다음 그 항목에 대해 집계함수를 처리합니다. 테이블 전체를 조회해서 Group by 처리 및 서브쿼리로 쓰기보단 아래의 방법으로 Group by처리를 유용하게 쓸 수 있습니다. select * ,sum(score) over(partition by chef) as summary ,avg(score) over(partition by che.. 2021. 7. 26.
DB - (MSSQL) 날짜 변환처리 방법 Datetime을 상황에 따라 날짜형식을 변환시키는 방법은 여러가지가 있으며 다음 표에 따라 적절히 사용할 수 있습니다 주로 사용하는 형식은 21, 23, 112, 121이며 사용법은 다음과 같습니다. select getdate() -- 2021-07-14 15:54:13.967 select convert(char(23), getdate(), 21) -- 2021-07-14 15:52:17.763 select convert(char(10), getdate(), 23) -- 2021-07-14 select convert(char(8), getdate(), 112) -- 20210714 select convert(char(23), getdate(), 121) -- 2021-07-14 15:52:17.763 .. 2021. 7. 14.
DB - DB Lock, DB락에 대해 알아보자 DBMS 사용시에 다중으로 트랜잭션이 발생할 경우 일관성과 무결성을 유지하려면 순차적인 진행을 보장할 수 있도록 직렬화 장치가 필요한데 이런 직렬화가 가능하도록 모든 DBMS가 사용하는 체계가 Lock이다. DBMS마다 Lock을 구현하는 방식과 세부적인 기능이 많이 다르므로 각 DBMS마다 Lock을 구현하는 방식에 대해서도 알 필요가 있다. Lock을 이해하기 쉽게 얘기하자면 화장실에서 볼일을 볼때 문을 잠근 다음, 볼일을 마치면 문을 열고 나오는 것 처럼 DB에서도 작업사항이 있을 경우 문을 잠그는 행위라고 보면된다. Shared(공유) Lock Shared Lock은 데이터를 읽고자(Select) 할 경우 사용된다. 다른 Lock과는 호환되지만 Exclusive(배타적) Lock과는 호환되지 않는.. 2021. 7. 11.
728x90