Oracle 16

[SQL] ORACLE, MySQL 월배치 쿼리 (문자열 컬럼 참조시)

DATE 타입 컬럼이 아닌 특정 문자열 컬럼을 기준으로 배치를 돌려야 할 때!    ORACLE- TABLENAME 테이블의 DATE_COLUMN 이라는 VARCHAR(4) 컬럼을 기준으로 월배치를 수행할 경우( DATE_COLUMN 의 값은 '202503' 형태 )  SELECT *FROM SCHEMA.TABLENAMEWHERE DATE_COLUMN = TO_CHAR(ADD_MONTH(SYSDATE, -1), 'YYYYMM');  - TABLENAME 테이블의 DATE_COLUMN 이라는 VARCHAR(8) 컬럼을 기준으로 월배치를 수행할 경우( DATE_COLUMN 의 값은 '20250320' 형태 )  SELECT *FROM SCHEMA.TABLENAMEWHERE SUBSTR(DATE_COLUMN,..

SQL 2025.03.20

[Oracle] 날짜별 데이터 카운트

특정 테이블의 날짜별 데이터 개수를 추출해야 하는 경우 ex) 23년 12월 1일~5일의 데이터를 날짜별로 카운트해야 한다면 SELECT * FROM ( SELECT count(*) AS d01 FROM SCHEMA.TB_NAME WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-01' ), ( SELECT count(*) AS d02 FROM SCHEMA.TB_NAME WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-02' ), ( SELECT count(*) AS d03 FROM SCHEMA.TB_NAME WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-03' ), ( ..

SQL 2023.12.19

[프로그래머스/SQL] 고양이와 개는 몇 마리 있을까

* 프로그래머스 > 코딩테스트 연습 * 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/59040 [문제 설명] ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DAT..

코딩테스트 2023.06.30

[프로그래머스/SQL] 특정 옵션이 포함된 자동차 리스트 구하기

* 프로그래머스 > 코딩테스트 입문 * 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/157343 [문제 설명] 다음은 어느 자동차 대여 회사에서 대여중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블입니다. CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다. Column name Type Nullable CAR_ID INTEGER FALSE CAR_TYPE VARCHAR(255) FALSE DAILY_FEE INTEGER F..

코딩테스트 2023.06.22

[프로그래머스/SQL] 12세 이하인 여자 환자 목록 출력하기

* 프로그래머스 > 코딩테스트 입문 * 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/132201 [문제 설명] 다음은 종합병원에 등록된 환자정보를 담은 PATIENT 테이블입니다. PATIENT 테이블은 다음과 같으며 PT_NO, PT_NAME, GEND_CD, AGE, TLNO는 각각 환자번호, 환자이름, 성별코드, 나이, 전화번호를 의미합니다. Column name Type Nullable PT_NO VARCHAR(10) FALSE PT_NAME VARCHAR(20) FALSE GEND_CD VARCHAR(1) FALSE AGE INTEGER FALSE TLNO VARCHAR(50) TRUE [문제] PATIENT 테이블에서 12세 ..

코딩테스트 2023.06.13

[프로그래머스/SQL] 평균 일일 대여 요금 구하기

* 프로그래머스 > 코딩테스트 입문 * 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/151136 [문제 설명] 다음은 어느 자동차 대여 회사에서 대여중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블입니다. CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다. Column name Type Nullable CAR_ID INTEGER FALSE CAR_TYPE VARCHAR(255) FALSE DAILY_FEE INTEGER F..

코딩테스트 2023.04.13

79일차(1)/Android App(42) : Http 요청으로 Oracle DB 출력하기

79일차(1)/Android App(42) : Http 요청으로 Oracle DB 출력하기 - 안드로이드 앱에서 DB에 있는 Todo 리스트 가져오기 - 안드로이드 앱에서 DB 테이블에 데이터 추가, 삭제하기 새 모듈 생성 activity_main.xml - sqLite 예제에서 사용한 layout 복사해옴 - 이전 예제에서는 내부 DB를 사용한 것이고, 이번 예제에서는 같은 기능을 SpringBoot의 oracle DB를 활용해서 해볼 것! - step13에서 할일을 입력해서 ListView에 추가했던 것처럼 원격지 DB에 들어갈 수 있도록 코딩. 삭제- 오래 클릭시 들어오는 요청으로삭제 - 안드로이드 앱과 서버 간의 대화를 구현하기. - SQLite에 UI를 다루는 기본동작은 있다. (이 경우 dbH..

국비교육(22-23) 2023.02.02

10일차(1)/DB_Oracle(8) : 제약조건, 시퀀스, 스칼라타입 등

[ 테이블 생성, 수정, 삭제 ] ALTER TABLE 테이블명 ADD(칼럼명 TYPE); ALTER TABLE test ADD(loc VARCHAR2(10)); - 이미 만들어진 테이블에 칼럼을 추가할 때 ALTER TABLE 테이블명 MODIFY(칼럼명 TYPE); ALTER TABLE 테이블명 MODIFY 칼럼명 TYPE; - 괄호는 써도 되고 안 써도 됨. 여러개의 행을 수정할때는 () 사용 (칼럼명을 기준으로 타입을 바꾸는 것.) - 테이블 수정의 종류 ADD : 칼럼 추가, 제약조건 추가 등 MODIFY : 칼럼 수정, 제약조건 수정, 제약조건 NOT NULL추가 등 RENAME COLUMN 칼럼명 TO 새칼럼명 : 칼럼이름 재설정 [ 제약조건 CONSTRAINT ] - 제약조건 추가 처음부터..

국비교육(22-23) 2022.10.19

9일차(3)/DB_Oracle(7) : DML, TCL, DDL, 제약조건

9일차(3)/DB_Oracle(7) : DML, TCL, DDL, 제약조건 - DML (Data Multipulation Language) : 테이블에 데이터를 입력하고 수정하고 삭제하는 것. - member라는 테이블을 하나 만들어서 데이터를 넣어줌 - 데이터를 새로 만들 때에는 CREATE 사용 ex) CREATE + table, sequence, user ... **PRIMARY KEY : null(공백)도 안 되고 값이 겹쳐서도 안 된다. ( NOT NULL + UNIQUE 의 특징을 가짐) - num 칼럼은 PRIMARY KEY로 지정했기 때문에, 번호가 중복되면 '무결성 제약 조건' 에 위배된다. (오류의 이유를 알고싶으면 오류번호로 검색해보면 된다!) - 데이터가 없으면 NULL 상태이다. ..

국비교육(22-23) 2022.10.18