DB/쿼리 문제풀이2023. 10. 6. 14:00프로그래머스 ORACLE 조건에 부합하는 중고거래 상태 조회하기

정답SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE WHEN STATUS = 'SALE' THEN '판매중' WHEN STATUS = 'RESERVED' THEN '예약중' ELSE '거래완료'END AS STATUSFROM USED_GOODS_BOARD WHERE TO_CHAR(CREATED_DATE, 'YYYY-MM-DD') = '2022-10-05'ORDER BY BOARD_ID DESC

DB/쿼리 문제풀이2023. 10. 6. 13:58프로그래머스 ORACLE 자동차 대여 기록에서 장기/단기 대여 구분하기

정답SELECT HISTORY_ID, CAR_ID, TO_CHAR(START_DATE, 'YYYY-MM-DD') AS START_DATE, TO_CHAR(END_DATE, 'YYYY-MM-DD') AS END_DATE, CASE WHEN END_DATE - START_DATE + 1 >= 30 THEN '장기 대여' ELSE '단기 대여' END AS RENT_TYPEFROM CAR_RENTAL_COMPANY_RENTAL_HISTORYWHERE TO_CHAR(START_DATE, 'YYYY-MM') = '2022-09'ORDER BY HISTORY_ID DESC;

DB/쿼리 문제풀이2023. 10. 6. 13:44프로그래머스 ISNULL ORACLE

경기도에 위치한 식품창고 목록 출력하기 SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, NVL(FREEZER_YN, 'N') FREEZER_YN FROM FOOD_WAREHOUSE WHERE ADDRESS LIKE '%경기%' ORDER BY WAREHOUSE_ID 이름이 없는 동물의 아이디 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID 나이 정보가 없는 회원 수 구하기 (ISNULL) SELECT COUNT(USER_ID) AS USERS FROM USER_INFO WHERE AGE IS NULL NULL 처리하기 SELECT ANIMAL_TYPE, NVL(NAME, 'NO NAME'), ..

WEB JAVA SPRING/etc2023. 10. 5. 17:01HttpServletRequest request

주로 웹 애플리케이션에서 HTTP 요청을 처리하는 서블릿 또는 컨트롤러에서 자동으로 생성되고 제공되는 객체입니다. 이 객체는 클라이언트에서 서버로 HTTP 요청을 보낼 때 서버 측에서 자동으로 생성되며, 해당 요청을 처리하는 메서드에 매개변수로 전달됩니다. 웹 애플리케이션에서 HTTP 요청과 관련된 정보를 제공하는 Java Servlet API의 일부입니다. 이 객체를 사용하면 클라이언트에서 서버로 보낸 HTTP 요청에 관한 다양한 정보에 액세스할 수 있습니다. 주로 다음과 같은 정보와 데이터가 넘어옵니다. HTTP 메서드: 요청이 사용한 HTTP 메서드 (GET, POST, PUT, DELETE 등)를 확인할 수 있습니다. 요청 URL: 클라이언트가 요청한 URL을 확인할 수 있습니다. 요청 헤더: H..

WEB JAVA SPRING/etc2023. 10. 5. 16:57JSON 배열 다루기

JSON 배열 데이터를 파싱// 클라이언트에서 전송된 JSON 배열 데이터를 파싱 JSONArray array = JSONArray.fromObject(param.get("paramMaplist"));클라이언트에서 전송된 JSON 배열 데이터를 서버에서 사용할 수 있는 형태로 변환 작동 순서param 객체에서 "paramMaplist" 키로 전달된 데이터를 가져온다,(이 데이터는 JSON 배열 형태로 클라이언트에서 전송되었다고 가정)JSONArray.fromObject(...) 메서드를 사용하여 JSON 배열 데이터를 자바의 JSONArray 객체로 파싱.이렇게 파싱된 배열은 이후에 자바 코드에서 사용할 수 있게 됨 클라이언트에서 다음과 같은 JSON 배열을 전송했다고 가정하면"paramMaplis..

JSON, JavaScript 객체 차이
WEB JAVA SPRING/JS2023. 10. 5. 16:49JSON, JavaScript 객체 차이

📌type이 object인 이유?? jsp의 success: function(data) 여기로 넘어감 console.log(data) 결과 🚩ajax에서 dataType: "JSON"을 설정했을 때, 서버에서 응답한 데이터가 JSON 형식으로 전달되면, JavaScript에서는 이 데이터를 받아서 자동으로 JavaScript 객체로 변환함 예를 들어, 서버에서 다음과 같은 JSON 형식의 데이터를 보냈다고 가정 { "name": "John", "age": 30 } 이 데이터는 JavaScript 객체처럼 다루어짐 즉, 다음과 같이 사용 console.log(data.name); // "John" console.log(data.age); // 30 typeof data가 "object"로 표시되는 이유는 ..

DB/쿼리2023. 10. 5. 16:38WITH 절

WITH 임시테이블로 사용됨 SELECT * FROM CTE_Name 으로 쓰면된다 SQL 쿼리에서 WITH 절은 일반적으로 공통 테이블 식(Common Table Expression 또는 CTE)을 정의하기 위해 사용 CTE는 쿼리 내에서 임시 테이블처럼 사용되는 이름이 있는 결과 집합을 생성하는 방법 제공 구조 WITH CTE_Name (CTE_Column1, CTE_Column2, ...) AS ( -- CTE 정의를 포함하는 서브쿼리 SELECT ... FROM ... WHERE ... ) 각 요소의 역할 CTE_Name: CTE의 이름을 지정합니다. (CTE_Column1, CTE_Column2, ...): 선택적으로 CTE에 포함될 열(컬럼) 목록을 정의,생략가능 AS: CTE 정의의 시작다...

DB/etc2023. 10. 5. 16:29OPENQUERY

OPENQUERY원격 서버에 대한 쿼리를 실행하고 결과를 가져오는 데 사용분산 데이터베이스 환경에서 다른 데이터베이스 서버 또는 소스에 대한 쿼리를 실행하고 데이터를 가져올 때 유용 다른 데이터베이스 서버 또는 소스와의 데이터 통합 및 조회 작업을 수행  OPENQUERY ( linked_server , 'query' )linked_server: 연결된 서버(Linked Server)의 이름연결된 서버는 현재 SQL Server와 다른 데이터베이스 서버 또는 데이터 소스와의 연결을 설정하는 데 사용'query': 실행할 원격 쿼리, 이 부분에는 연결된 서버에서 실행할 SQL 쿼리가 들어감

DB/etc2023. 10. 5. 16:28MSSQL 자동 증가 열(IDENTITY)과 시퀀스(Sequence)

자동 증가 열(IDENTITY)자동 증가 열은 테이블의 열(column) 중 하나를 정의할 때 사용이 열의 값을 데이터가 삽입될 때마다 자동으로 증가시킴주로 기본 키(primary key)로 사용되며, 각 행(row)마다 고유한 값을 가짐예시 ID 열은 자동으로 1부터 시작하여 1씩 증가하는 값을 가짐 CREATE TABLE MyTable ( ID INT IDENTITY(1,1) PRIMARY KEY, Name VARCHAR(50)); 시퀀스시퀀스는 별도의 객체로 정의되며, 테이블과는 독립적으로 존재시퀀스는 데이터를 생성하는 데 사용되는 일련 번호를 생성하는 데 주로 사용시퀀스를 사용하면 여러 테이블에서 같은 시퀀스를 공유하거나 복잡한 값 생성 규칙을 정의할 수 있음예를 들어, 아래와 같이 시..

DB/etc2023. 10. 5. 16:27MSSQL OPTION(RECOMPILE)

OPTION(RECOMPILE)해당 옵션을 사용하면 쿼리가 실행될 때마다 실행 계획을 재 컴파일하는 것을 지시합니다.이렇게 하면 SQL Server가 매번 최신의 테이블 통계 또는 조인 조건과 같은 환경 변경 사항을 고려하여 최적의 실행 계획을 생성할 수 있습니다.  OPTION(RECOMPILE)을 사용하는 상황은 다음과 같습니다:매개 변수 값이 자주 변경되는 경우 이 매개 변수 값을 고려한 최적의 실행 계획을 유지하기 위해 OPTION(RECOMPILE)을 사용할 수 있습니다.조건부 논리를 가진 동적 SQL 동적 SQL을 사용하고 조건부로 WHERE 절이나 조인 조건이 변경되는 경우, 실행 계획을 동적으로 조정하기 위해 OPTION(RECOMPILE)을 활용할 수 있습니다.특정 상황에서 최적의 실행 ..

DB/쿼리2023. 10. 5. 16:27윈도우함수

🍩 윈도우함수 OLAP 함수라고도 한다. OLAP란, OnLine Analytical Processing의 약자로, 데이터베이스를 사용한 실시간(온라인) 데이터 분석처리 윈도우 함수는 이 OLAP 용도로 사용하기 위해 표준 SQL에 추가된 기능 결과 집합의 여러 행에 대한 계산을 수행하는 데 사용 일반적으로 정렬된 데이터에 대해 작동하며, 데이터베이스 질의의 윈도우(또는 창)에 대해 계산을 수행 효율적인 데이터 분석 및 집계 작업을 수행 ROW_NUMBER(): 결과 집합의 각 행에 순서 번호를 할당합니다. 주로 정렬된 결과에서 특정 순서의 행을 선택할 때 사용됩니다. SELECT ROW_NUMBER() OVER(ORDER BY Salary DESC) AS RowNum, EmployeeName, Sala..

DB/쿼리2023. 10. 5. 16:27APPLY

CROSS APPLY → INNER JOIN OUTER APPLY → OUTTER JOIN 그러나, CROSS APPLY와 INNER JOIN, 그리고 OUTER APPLY와 OUTER JOIN은 같은 결과를 반환하지 않습니다. CROSS APPLY vs. INNER JOIN: CROSS APPLY: 왼쪽 테이블의 각 행에 대해 오른쪽 테이블의 서브쿼리를 실행하고, 조건에 맞는 결과를 반환합니다. 이 때, 오른쪽 서브쿼리는 왼쪽 테이블의 각 행에 대해 실행되므로, 왼쪽 테이블의 모든 행에 대한 조인이 발생할 수 있습니다. 따라서, 두 테이블 간의 관계가 매우 밀접하게 형성됩니다. INNER JOIN: 두 테이블 간의 조인 조건에 맞는 행만 반환합니다. INNER JOIN은 두 테이블 간의 관계를 확인하고..

image