MySQL(15)
-
[MySQL] GROUP BY 문제
https://school.programmers.co.kr/learn/courses/30/lessons/144855 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2022년 1월의 카테고리 별 도서 판매량을 합산하고, 카테고리(CATEGORY), 총 판매량(TOTAL_SALES) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 카테고리명을 기준으로 오름차순 정렬해주세요. SELECT A.CATEGORY, SUM(B.SALES) AS TOTAL_SALESFROM BOOK AS AINNER JOIN BOOK_SALES AS BON A.BOOK_ID = B.BO..
2024.08.13 -
[MySQL] 데이터 형식 변환 함수
데이터 형식 변환을 위해서는 CAST와 CONVERT 함수를 사용할 수 있다. CAST (expression AS 데이터형식 [(길이)]CONVERT (expression, 데이터형식 [(길이)] 데이터 형식에는 BINARY, CHAR, DATE, DATETIME, DECIMAL, JSON, SIGNED INTEGER, TIME, UNSIGNED INTEGER 등을 사용할 수 있다. SELECT AVG(amount) AS '평균 구매 개수' FROM buytbl; 정수로 보기 위해서 다음과 같이 사용할 수 있다. SELECT CAST(AVG(amount) AS SIGNED INTEGER) AS '평균 구매 개수' FROM buytbl;SELECT CONVERT(AVG(amount), SIGNED INTE..
2024.08.13 -
[MySQL] 변수
변수는 Workbench를 재시작할 때까지는 유지되지만 닫거나 재시작하면 소멸한다. 선언 방법과 값 대입은 다음과 같다. SET @변수이름 = 변수의 값; --변수 선언 및 값 대입SELECT @변수이름; --변수 출력 USE sqldb;SET @myVar1 = 5;SET @myVar2 = 3;SET @myVar3 = 4.25;SET @myVar4 = '기수 이름 ==> ';SELECT @myVar1; // 5SELECT @myVar2 + @myVar3; //7.250000000000000000000...SELECT @myVar4 , Name FROM usertbl WHERE height > 180;변수는 실행하지 않으면 적용되지 않는다. LIMIT은 원칙적으로 숫자를 직접 넣어야하나 PREPARE E..
2024.08.12 -
[MySQL] DELETE FROM
DELETE는 행 단위로 삭제를 한다. DELETE [ LOW_PRIORITY ] [ QUICK ] [ IGNORE ] FROM table[WHERE conditions][ORDER BY expression [ ASC | DESC ]][LIMIT number_rows]; 만약 WHERE문이 생략되면 전체 데이터를 삭제한다. 'Aamer'을 삭제하려면 다음과 같이 하면 된다. USE sqldb;DELETE FROM testTbl4 WHERE Fname = 'Aamer'; 만약 Aamer 중에서 상위 5건만 삭제하고 싶으면 LIMIT을 추가하면 된다. DELETE FROM testTbl4 WHERE Fname = 'Aamer' LIMIT 5; 대용량 테이블 삭제테이블 삭제는 DELETE, DROP, TRUN..
2024.08.09 -
[프로그래머스] SELECT 문제 - 2
https://school.programmers.co.kr/learn/courses/30/lessons/131120 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요. SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_..
2024.08.08 -
[MySQL]UPDATE문
기존에 입력되어 있는 값을 변경하기 위해서는 UPDATE문을 사용해야한다. UPDATE [ LOW_PRIORITY ] [ IGNORE ]tableSET column1 = expression1, column2 = expression2, ...[WHERE conditions][ORDER BY expression [ ASC | DESC ]][LIMIT number_rows]; WHERE절은 생략이 가능하지만, 생략하면 테이블의 전체 행이 변경된다. 'Kyoichi'의 Lname을 '없음'으로 변경하는 코드이다. 실수로 WHERE절을 빼먹으면 전체 행의 Lname이 모두 '없음'으로 변경된다. 주의해야한다. UPDATE testTbl4 SET Lname = '없음' WHERE Fname = 'K..
2024.08.08