본문 바로가기

알고리즘

(12)
[ORACLE] 없어진 기록 찾기 프로그래머스 SQL LV.3 없어진 기록 찾기 [문제] 천재지변으로 인해 일부 데이터가 유실되었습니다. 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물의 ID와 이름을 ID 순으로 조회하는 SQL문을 작성해주세요. [풀이] 1 2 3 4 5 6 7 SELECT b.ANIMAL_ID, b.NAME FROM ANIMAL_INS A, ANIMAL_OUTS B WHERE A.ANIMAL_ID(+) = B.ANIMAL_ID and a.animal_id is null order by b.animal_id; cs
[ORACLE] DATETIME에서 DATE로 형 변환 프로그래머스 SQL LV.2 DATETIME에서 DATE로 형 변환 [문제] ANIMAL_INS 테이블에 등록된 모든 레코드에 대해, 각 동물의 아이디와 이름, 들어온 날짜1를 조회하는 SQL문을 작성해주세요. 이때 결과는 아이디 순으로 조회해야 합니다. [풀이] 1 2 3 4 5 SELECT ANIMAL_ID , NAME , TO_CHAR(DATETIME, 'YYYY-MM-DD') AS "날짜" FROM ANIMAL_INS ORDER BY ANIMAL_ID; cs
[ORACLE] 중성화 여부 파악하기 프로그래머스 SQL LV.2 중성화 여부 파악하기 [문제] 보호소의 동물이 중성화되었는지 아닌지 파악하려 합니다. 중성화된 동물은 SEX_UPON_INTAKE 컬럼에 'Neutered' 또는 'Spayed'라는 단어가 들어있습니다. 동물의 아이디와 이름, 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 중성화가 되어있다면 'O', 아니라면 'X'라고 표시해주세요. [풀이] 1 2 3 4 5 6 7 8 9 10 11 SELECT ANIMAL_ID , NAME --, SEX_UPON_INTAKE , (CASE WHEN SEX_UPON_INTAKE LIKE 'Neutered%' THEN 'O' WHEN SEX_UPON_INTAKE LIKE 'Spayed%' THEN 'O' ELSE 'X' ..
[ORACLE] 이름에 el이 들어가는 동물 찾기 프로그래머스 SQL LV.2 이름에 el이 들어가는 동물 찾기 [문제] 보호소에 돌아가신 할머니가 기르던 개를 찾는 사람이 찾아왔습니다. 이 사람이 말하길 할머니가 기르던 개는 이름에 'el'이 들어간다고 합니다. 동물 보호소에 들어온 동물 이름 중, 이름에 EL이 들어가는 개의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 이름 순으로 조회해주세요. 단, 이름의 대소문자는 구분하지 않습니다. [풀이] 1 2 3 4 5 6 SELECT ANIMAL_ID , NAME FROM ANIMAL_INS WHERE ANIMAL_TYPE = 'Dog' AND (NAME LIKE '%el%' OR NAME LIKE '%El%') ORDER BY NAME; Colored by Color Scripter cs
[ORACLE] 루시와 엘라 찾기 프로그래머스 SQL LV.2 루시와 엘라 찾기 [문제] 동물 보호소에 들어온 동물 중 이름이 Lucy, Ella, Pickle, Rogan, Sabrina, Mitty인 동물의 아이디와 이름, 성별을 조회하는 SQL 문을 작성해주세요. [풀이] 1 2 3 4 5 6 SELECT ANIMAL_ID , NAME , SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN ('Lucy','Ella','Pickle','Rogan','Sabrina','Mitty') ORDER BY ANIMAL_ID; Colored by Color Scripter cs
[ORACLE] NULL 처리하기 프로그래머스 SQL LV.2 NULL 처리하기 [문제] 입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 No name으로 표시해 주세요. [풀이] 1 2 3 4 5 6 SELECT ANIMAL_TYPE , decode(name,null,'No name', name) as NAME , SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID ; Colored by Color Scripter cs
오일러 문제6 1부터 10까지 자연수를 각각 제곱해 더하면 다음과 같습니다 (제곱의 합). 12 + 22 + ... + 102 = 385 1부터 10을 먼저 더한 다음에 그 결과를 제곱하면 다음과 같습니다 (합의 제곱). (1 + 2 + ... + 10)2 = 552 = 3025 따라서 1부터 10까지 자연수에 대해 "합의 제곱"과 "제곱의 합" 의 차이는 3025 - 385 = 2640 이 됩니다. 그러면 1부터 100까지 자연수에 대해 "합의 제곱"과 "제곱의 합"의 차이는 얼마입니까? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class euler_p6 { public static void main(String[] args) { int mul = 0; int sum =..
오일러 문제5 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수 Problem 5 1 ~ 10 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 2520입니다. 그러면 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 얼마입니까? 1234567891011121314151617181920212223public class euler_p5 { public static void main(String[] args) { int num = 1; boolean TF = true; while(TF == true) { for(int i = 1; i