본문 바로가기

반응형

개발

(63)
[mssql] WITH 절 , 비재귀적 CTE WITH 절은 CTE(Common Table Expression)을 표현하기 위한 구문이다. CTE는 기존 뷰, 파생테이블, 임시 테이블 들으로 사용되던 것을 대신 할 수 있으며, 더 간결한 식으로 보여지는 장점이 있다. 비재귀적 CTE, 재귀적 CTE 두가지가 있다. 비재귀적 CTE 단순한 형태이며, 복잡한 쿼리문장을 단순화시키는 데에 적합하게 사용될 수 있다. 사용법 WITH CTE_테이블이름(열이름) AS( ) SELECT 열이름 FROM CTE_테이블이름 ; ​ WITH AAA(열이름) AS( AAA쿼리문), BBB(열이름) AS ( BBB쿼리문), CCC(열이름) AS (CCC쿼리문), SELECT * FROM [AAA OR BBB OR CCC] 테이블에서 총구매액을 구하여 정렬하고 싶을때 실제..
[mssql] ROLLUP() 그룹별 합계 구하기, GROUPING_ID() 사용법 1 2 3 select num, groupname, sum(price * amount) as '비용' from buyTb1 group by ROLLUP(groupname, num); cs 중간 NULL로 되어 있는 것이 각 GROUPNAME 별 소 합계를 의미한다. 마지막은 소합계의 합계, 즉 총합계가 나왔다. 1 2 3 4 select groupname, sum(price * amount) as '비용' from buyTb1 group by rollup(groupname); Colored by Color Scripter cs GROUP BY에서 그룹이름으로 묶어주면 각 그룹 별 소합계, 총 합계만 볼 수 있다. 1 2 3 4 select groupname, sum(price * amount) as '비..
[mssql] GROUP BY / HAVING 사용법 GROUP BY- 그룹별로 묶어주는 역할을 한다.- 집계함수에 사용되는 컬럼은 GROUP BY절에 없더라도 사용가능하다.- 집계함수에 사용되지 않는 컬럼은 GROUP BY 절과 SELECT 절에 함께 써줘야 한다. PersonType별로 묶어보자 묶어준 PersonType별로 ID 수를 알고 싶을 때 -- 집계함수 사용 (count) ** 집계 함수 **AVG() 평균 MIN() 최소값 MAX() 최대값COUNT() 행의 개수 STDEV() 표준편차 VAR() 분산 SUM() 합계 ** 주의사항 ** GROUP BY 없이 별도의 열을 집계 함수와 같이 사용할 수 없다. 가장 큰 키와 가장 작은 키의 회원 이름과 키를 출력 하고 싶다면 ? 아래와 같이 작성 시 오류가 나온다. 1SELECT name, MI..
[mssql] 중복제거 DISTINCT 사용법 DISTINCT 는 중복된 것을 1개만 출력한다. 사용법 : 1SELECT DISTINCT AGE From USER;cs 결과: 해당 테이블의 age중 중복된 값을 제거하고 1개씩만 보여준다. AGE 1 25 2 26 3 27 4 29
[mssql] 서브쿼리뜻 ANY, ALL 사용법 예제 서브쿼리란 ? 하나의 쿼리문 안에 또 다른 쿼리문이 들어 있는 것이다.SELECT, FROM, WHERE, HAVING, ORDER BY절 등등 다양한 곳에서 사용 가능하다.서브쿼리 안에 서브쿼리를 계속 넣는 형식도 가능. - A의 키보다 크거나 같은 사람을 모두 구하여라.12345--1. A의 키를 찾는다.SELECT height FROM USER WHERE name = 'A' --(결과 : A의 height는 180) --2. A의 키를 이용해 A의 키보다 크거나 같은 사람 구하기.SELECT * FROM USER WHERE height >= 180 ;cs * 서브쿼리를 이용 하면 ( 2번과 같은 결과도출)123SELECT * FROM USER WHERE height >= (SELECT height ..
[mssql] BETWEEN..AND / IN / LIKE 사용법, 예제, 차이 연속적인 값을 조회할때 BETWEEN~AND 사용 - 키가 180~185인 사람 조회 123SELECT * FROM USER WHERE height >=180 AND height
트리거 트리거란 삽입, 수정, 삭제 등의 작업(이벤트) 발생 시에 자동으로 작동되는 개체AFTER 트리거는 테이블에 이벤트가 작동한 후에 실행INSTEAD OF 트리거는 이벤트가 발생하기 전에 작동하는 트기거이다. (뷰에 행이 삽입, 변경, 삭제 될 때 사용한다)트리거에서 INSERT, UPDATE, DELETE 작업이 수행되면 임시로 사용되는 시스템 테이블이 두개 있는데, 이름은 'INSERTED', 'DELETED'이다 다중 트리거는 하나의 테이블에 동일한 트리거가 여러 개 부착된 것을 말한다. DML 트리거 / DDL 트리거 / LOGON 트리거 DML 트리거 : 테이블 뷰에 DML문 이벤트가 발생했을 때 사용 DDL 트리거 : 서버나 DB에 DDL 문의 이벤트가 발생했을 때 사용LOGON 트리거 : 사용..
[java][algorithm]검색 - 선형검색, 이진검색(binarySearch) 선형검색 앞부터 순서대로 검색 하는 방법 package javaStudy; import java.util.Scanner; public class ch3_2 { public static void main(String[] args) { Scanner stdIn = new Scanner(System.in); System.out.print("배열 수 : "); int num = stdIn.nextInt(); int[] x = new int[num]; for (int i = 0; i < x.length; i++) { System.out.print("x[i] : "); x[i] = stdIn.nextInt(); } System.out.print("검색할 값 : "); int key = stdIn.nextInt();..

반응형