전체 글 (271) 썸네일형 리스트형 [프로그래머스_SQL] 카테고리 별 상품 개수 구하기 #SUBSTR #LEFT MySQLSELECT LEFT(PRODUCT_CODE, 2) as CATEGORY, COUNT(PRODUCT_ID) as PRODUCTSFROM PRODUCTGROUP BY CATEGORYORDER BY CATEGORY; OracleSELECT SUBSTR(PRODUCT_CODE, 1, 2) as CATEGORY, COUNT(PRODUCT_ID) as PRODUCTSFROM PRODUCT GROUP BY SUBSTR(PRODUCT_CODE, 1, 2)ORDER BY CATEGORY; MySQL의 경우, LEFT 함수를 사용하여 문자열의 왼쪽에서 2글자를 추출합니다. GROUP BY 절에서 별칭을 사용합니다.Oracle의 경우, SUBSTR 함수를 사용하여 문자열의 1번째 위치에서 2글자를 추출합니다. .. [프로그래머스_SQL] 특정 옵션이 포함된 자동차 리스트 구하기 #LIKE SQLSELECT *FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS like '%네비게이션%'ORDER BY CAR_ID DESC; 특정 문자열을 포함하기 위해서는 LIKE 연산자를 사용해야 합니다.% 와일드카드가 앞쪽에 있으면 ~네비게이션으로 끝나는 문자열,% 와일드카드가 뒤쪽에 있으면 네비게이션~으로 시작하는 문자열,% 와일드카드가 양쪽에 있으면 네비게이션이 포함된 문자열입니다. 문제는 아래에서 확인할 수 있습니다.https://school.programmers.co.kr/learn/courses/30/lessons/157343?language=mysql 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠.. [프로그래머스_SQL] NULL 처리하기 #IFNULL #NVL MySQLSELECT ANIMAL_TYPE, IFNULL(NAME, 'No name') as NAME, SEX_UPON_INTAKEFROM ANIMAL_INSORDER BY ANIMAL_ID ASC; OracleSELECT ANIMAL_TYPE, NVL(NAME, 'No name') as NAME, SEX_UPON_INTAKEFROM ANIMAL_INSORDER BY ANIMAL_ID ASC; NULL을 No name으로 처리하기 위해서는 MySQL은 IFNULL, Oracle은 NVL을 이용합니다. 문자열은 작은 따옴표('')를 이용하여 나타냅니다. 문제는 아래에서 확인할 수 있습니다.https://school.programmers.co.kr/learn/courses/30/lessons/59410?la.. [프로그래머스_SQL] 연도별 대장균 크기의 편차 구하기 #JOIN MySQLSELECT YEAR(a.DIFFERENTIATION_DATE) as YEAR , (b.MAX_SIZE - a.SIZE_OF_COLONY) as YEAR_DEV , a.IDFROM ECOLI_DATA aLEFTJOIN( SELECT YEAR(DIFFERENTIATION_DATE) as YEAR , MAX(SIZE_OF_COLONY) as MAX_SIZE FROM ECOLI_DATA GROUP BY YEAR(DIFFERENTIATION_DATE) ) as bON YEAR(a.DIFFERENTIATION_DATE) = b.YEARORDER BY YEAR ASC, YEAR_DEV ASC; 서브 쿼리를 이용하여 LEFT JOIN을 수행합니다.각 연도의 최대값.. [백준_JAVA_알고리즘] 11724 연결 요소의 개수 #DFS 다음 문제는 DFS를 활용해서 해결할 수 있습니다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { static int[][] graph = new int[1001][1001]; static boolean[] visited = new boolean[1001]; static int N; static int M; public static void dfs(int index){ visited[index] = true; for(int j = 1; j 현재 정점.. [백준_JAVA_알고리즘] 1012 유기농 배추 #DFS 다음 문제는 DFS를 활용해서 해결할 수 있습니다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { /* 1. 배추가 나오면 벌레++; 2. 네 방향 모두 탐색하여, 배추와 인접한 배추 찾기 -> 1을 0으로 변환 3. 벌레 개수 반환 */ static int[][] field; static boolean[][] visited; static int[] dx = {-1, 1, 0, 0}; static int[] dy = {0, 0, -1, 1}; sta.. [프로그래머스_SQL] 상위 n개 레코드 LIMIT, ROWNUM MySQLSELECT NAMEFROM ANIMAL_INS ORDER BY DATETIMELIMIT 1;MySQL은 LIMIT을 이용해서 처리할 수 있습니다. OracleSELECT NAMEFROM ( SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME ASC)WHERE ROWNUM Oracle은 ROWNUM을 이용해서 처리할 수 있습니다. LIMIT과 ROWNUM은 언뜻 보면 같아 보이지만, 동작에서 큰 차이가 있습니다.예를 들어, LIMIT은 ORDER BY 실행 후 결과를 제한합니다. 하지만, ROWNUM은 ORDER BY 실행 전에 번호가 매겨지므로, 정렬된 결과에서 행을 제한하려면 서브쿼리를 사용해야 합니다.-- MySQLSELECT * FROM t.. [백준_JAVA_알고리즘] 17298 오큰수 #스택 가장 최근에 확인한 수부터 처리하기 위해, 스택의 LIFO를 이용합니다.import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Stack;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); StringBuilder stringBuilder =.. 이전 1 2 3 4 ··· 34 다음 목록 더보기