본문 바로가기

언어53

[MySQL] 조건에 맞는 사원 정보 조회하기 문제 :https://school.programmers.co.kr/learn/courses/30/lessons/284527?language=mysql 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 해결 :SELECT B.SCORE, EM.EMP_NO, EM.EMP_NAME, EM.POSITION, EM.EMAIL FROM HR_EMPLOYEES EM INNER JOIN (SELECT EMP_NO, SUM(SCORE) AS SCORE FROM HR_GRADE GR WHERE YEAR =.. 2024. 6. 3.
[Oracle] 테이블 create, 속성 보기와 comment하기 1. Create 문create table [schema].[table]( [col_nm] [type] [default ~] [not null] work_dt char(8) default to_char(sysdate, 'yyyyMMdd') not null, finish_yn char(1) not null, err_desc varchar(4000), create_dtm timestamp default sysdate not null) 2. 테이블 속성 보기desc [schema].[table]; 3. 테이블 Commentcomment on table [schema].[table] is 'table_nm'; -- table's commentcomment on column [schema].[table].[col.. 2024. 5. 22.
[postgreSQL] 사용자, DB, schema, table 생성 및 문법 1. 사용자 생성create user {user_id} password {pw} {superuser/nosuperuser}; 2. DB 생성create database {local_db} owner {user_id};User_id 계정으로 DB 오너 만들기. 3. Schema 생성create schema {local_schema}; 4. Table 생성create table {local_schema}.{table_name}( id Integer primary key, type Varchar(50) not null, reg_date Timestamp not null, start_time Timestamp, end_time Timestamp constraint start_end c.. 2024. 5. 20.
HashMap | 값 가져오기 | 정렬하기 | TreeMap | etc HashMap의 특징 Key : Value 로 이루어진 자료형. Key는 고유한 값으로 중복이 허용되지 않는다. value는 중복이 가능하다. 순서가 없는 자료 구조. 메소드들 HashMap map = new HashMap(); map.put(1, "jina"); map.put(2, "dana"); map.put(3, "alex"); [ 키와 값을 같이 가져오는 entrySet() ] 키와 값을 같이 가져와야하는 경우, Map.Entry 인터페이스의 entrySet() 메서드를 사용한다. Map 객체의 키와 값을 접근할 수 있도록 해주는 getKey(), getValue() 함수가 존재한다. 방법 1: for문 for( Map.Entry pair : map.entrySet() ){ System.out.p.. 2024. 2. 13.
[MariaDB] 중복, NULL, 유효하지 않은 고객 제거하는 쿼리 1. 중복 제거 쿼리 SELECT CUST_ID, COUNT(CUST_ID) AS CNT, '중복' AS REASON FROM C_CUST_ADD_ITEMP WHERE CUSTG_ID = {CUSTG_ID} GROUP BY CUST_ID HAVING COUNT(CUST_ID)>1 2. NULL 제거 쿼리 SELECT CUST_ID, COUNT(CUST_ID) AS CNT, 'NULL' FROM C_CUST_ADD_ITEMP WHERE CUSTG_ID = {CUSTG_ID} AND (CUST_ID = '' OR CUSTG_ID IS NULL) 3. TG_CUST_BHCRD_DD 테이블에 존재하지 않는 CUST_ID를 C_CUST_ADD_ITEMP 테이블에서 제거하는 쿼리 SELECT CUST_ID, COU.. 2024. 2. 1.
[JAVA] Stream API Stream API는 순차적 or 병렬적으로 다량의 데이터 처리 작업을 돕고자 Java8에 추가되었다. 중간 연산 중간 연산(Intermediate Operation)은 Stream을 전달 받아서 다른 Stream으로 변환하고 Stream을 반환한다. 중간 연산 메소드를 알아보겠습니다. filter(조건) filter는 조건에 맞는 요소로 구성된 새로운 스트림을 반환 map(함수) 주어진 함수를 적용한 형태로 스트림을 변환 distinct() 중복 제거 sorted() 정렬 limit() Stream의 요소를 제한 skip() Stream의 처음 일부 요소를 건너뜀 peek() Stream의 요소를 소모하지 않는다. 연산과 연산 사이에 올바르게 처리되었는지 확인하기 위해 사용한다. int[] num = .. 2024. 1. 5.
[JAVA] substring() substring(int index) int index 이후의 문자열을 반환 String str = "12345"; System.out.println(str.substring(3)); //45 substring(int beginIndex, int endIndex) beginIndex부터 endIndex전까지의 문자열을 반환 endIndex 는 포함하지 않는다. String str = "12345"; System.out.println(str.substring(1,4)); //234 2024. 1. 4.
[JAVA] startsWith() 와 endsWith() boolean startsWith() 대상 문자열이 특정 문자 또는 문자열로 시작하는지 체크하는 함수이다. String str = " 프로그래머스"; System.out.println(str.startsWith("프")); //false System.out.println(str.startsWith(" 프")); //true ※ 공백도 체크하니 주의!! boolean endsWith() 함수는 대상 문자열이 특정 문자 또는 문자열로 끝나는지 체크하는 함수이다. String str = " 프로그래머스"; System.out.println(str.endsWith("스 ")); //false System.out.println(str.endsWith("스")); //true ※ 공백도 체크하니 주의!! 2024. 1. 4.
[JAVA] 깊은 복사와 얕은 복사 1차원 배열 복사 얕은 복사란? - 객체의 주소 값을 복사하는 것이다. - 여러 객체가 같은 주소를 참조하기 때문에 하나의 값을 변경하면 다른 대상의 값도 변경된다. - 한 개의 객체 주소를 참조하므로 하나의 객체라고 볼 수 있다. - 하나의 객체로써 사용이 가능하다면 쓸데없이 객체를 복사하여 사용할 필요없지만 이럴 경우 사용한다는 의미가 된다. public class Array_Copy{ public static void main(String[] args) { int[] a = { 1, 2, 3, 4 }; int[] b = a; } } 깊은 복사란? - 객체의 실제 값을 새로운 객체로 복사하는 것이다. - 다른 주소와 같은 값인 객체가 두개 존재하게 된다. - 대개 객체를 복사한다는 말은 얕은 복사가 .. 2024. 1. 2.
[Oracle] 없어진 기록 찾기 문제 https://school.programmers.co.kr/learn/courses/30/lessons/59042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS O LEFT JOIN ANIMAL_INS I ON O.ANIMAL_ID = I.ANIMAL_ID WHERE I.ANIMAL_ID IS NULL ORDER BY ANIMAL_ID; 2023. 7. 1.
[Oracle] 조건에 부합하는 중고거래 댓글 조회하기 문제 https://school.programmers.co.kr/learn/courses/30/lessons/164673 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 SELECT A.TITLE, A.BOARD_ID ,B.REPLY_ID, B.WRITER_ID, B.CONTENTS, TO_CHAR(B.CREATED_DATE, 'YYYY-MM-DD') FROM USED_GOODS_BOARD A JOIN USED_GOODS_REPLY B ON A.BOARD_ID = B.BOARD_ID WHERE TO_CHAR(A.CREATED_DATE, 'yyyy-mm.. 2023. 6. 19.
[Oracle] 조건에 맞는 회원수 구하기 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131535 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 SELECT count(user_id) as users from user_info where to_char(joined, 'yyyy') = 2021 and age between 20 and 29; 1. DATE 타입을 TO_CHAR함수로 변환 2. 컬럼 BETWEEN 범위 AND 범위 2023. 6. 11.