Basics에 해당하는 글 68

  1. 08. 숫자와 문자열을 다루는 함수 2021.01.25

    ***웬만한 건 다 함수로 정해져 있으니 여기를 참고*** *** 테이블 내부 데이터 자체를 건드리는 게 아니다! *** select로 뽑아올 때 출력값을 어떻게 보일 지 정해주는 함수라는 것 유의*** [소수점 이하 숫자 다루기] ROUND(컬럼명/값, n) : 값을 소수점 이하 n자릿수로 반올림 -> ROUND(8.765,2) = 8.77 TRUNCATE(컬럼명/값,n) : 값을 소수점 이하 n자릿수까지만 남기고 나머지 버림 -> TRUNCATE(8.765,2) = 8.76 CEIL(컬럼명/값) : 값의 소수점 이하를 올림해 정수 반환 FLOOR(컬럼명/값) : 값의 소수점 이하를 버림해 정수 반환 [간단한 숫자 연산하기] POWER(컬럼명/값, n) = POW(컬럼명/값, n) : 값을 n제곱해서 ..


  2. 07. 데이터 결합하기(↕️) / UNION, UNION ALL 2021.01.04

    JOIN의 경우는 옆으로 데이터를 이어 붙이는 것이었다. 이번에는 위 아래로 붙이는 걸 해볼거임! 실습링크 UNION : 두 개의 테이블의 데이터를 중복값을 제외하여 결합한 테이블을 반환한다. (default) UNION ALL : 중복값을 포함하여 결합한 테이블을 반환한다. *SELECT와 달리 중복값을 제외하는 출력이 디폴트다. 예시 : Products테이블에서 Price가 5 이하거나 200 이상인 데이터만 출력하세요. > SELECT * FROM Products WHERE Price = 200 위와 같은 기능을 하는 코드를 구현하기 위해서는 . . . UNION을 아래와 같이 사용하면 5 이하인 테이블과 200 이상인 두 개의 테이블을 붙여준다. > SELECT * FROM Products WHE..


  3. 06. 테이블 결합하기(↔️) / JOIN, DATE_ADD 2020.12.30

    관계형 데이터베이스(Relative DataBase) >> 관련이 있는 테이블을 큰 하나의 테이블이 아니라 여러 개의 테이블로 나눠서 저장함. 그리고 그 테이블간의 관계성으로 데이터를 저장한다. why??? 중복해서 저장할 필요가 없는 정보들을 효율적으로 저장하기 위해서임. JOIN : 관련이 있는 두 개의 테이블을 결합해서 데이터를 한 번에 가져오게 하는 것 실습링크 ✔️SELECT * FROM Users, Orders WHERE Users.ID = Orders.UserID = SELECT * FROM Users INNER JOIN Orders ON Users.ID = Orders.userID 결과에서 왼쪽에 두고 싶은 테이블을 FROM 뒤에 써 준다. >SELECT * FROM Orders ➡️ 이 ..


  4. 05. 조건문 CASE, 테이블 피봇 2020.12.29

    엑셀에서의 IF와 비슷한 문법. 실습링크 >SELECT CASE >SELECT WHEN categoryid = 1 THEN '음료' >SELECT WHEN categoryid = 2 THEN '조미료' >SELECT ELSE '기타' >SELECT END AS 'categoryname', * FROM Products >> Products 테이블에서, Categoryid가 1이면 '음료', 2이면 '조미료', 그 외면 '기타'로 표기하고 해당 column명은 categoryname으로 지정해서 나타내라. *CASE 내에 비교연산자(=,,>,SELECT CASE >SELECT WHEN categoryid = 1 AND SupplierID = 1 THEN '음료' >SELECT WHEN categoryid =..


  5. 04. 보고 싶은 데이터 요약하기 / 집계함수, GROUP BY 2020.12.29

    대량의 값들을 볼 때는 각각의 데이터를 보기보다는 통계를 뽑기도 한다. = 요약 통계 집계 함수 : 여러 행 또는 테이블 전체 행으로부터 하나의 결과값을 반환하는 함수! 실습 링크 >SELECT COUNT(*) FROM Products >> Products 테이블에 있는 전체* 데이터 행의 수를 세어준다. ID Name Visits 1 A 1 2 A 2 3 B 3 4 C 5 5 Null Null >SELECT COUNT(*) FROM sample; → 5 전체 데이터 행의 수 >SELECT COUNT(Name) FROM sample; → 4 Null값 제외 >SELECT COUNT(DISTINCT Name) FROM sample; → 3 Null값 제외+중복값 제외 SUM : 숫자 컬럼을 가진 데이터의 ..


  6. 03. ORDER BY, 문자열 자르기 + 주석 처리 2020.12.20

    데이터 정렬하기. 실습링크 ORDER BY라는 예약어를 사용한다. (WHERE 다음에 위치함) >SELECT * FROM Products ORDER BY ProductID DESC (descending) >> Customers 테이블에서 CustomerID를 기준으로 내림차순으로 정렬한 모든 항목 오름차순의 경우 ASC를 쓴다. 하지만 DESC를 쓰지 않으면 디폴트가 ASC임. *ORDER BY 명령 자체는 데이터베이스에 저장된 순서를 변경하지는 않는다. 건들지 않음. 저장되어 있는 데이터는 순서대로 쌓여 있고, select문을 수행해서 데이터를 보여줄 때 순서만 변경해서 보여주는 것. *여러 기준으로 정렬하고 싶을 때는 콤마(,) 후 두 번째 기준이 될 항목의 이름을 써 준다. LIMIT를 활용하면 최..


  7. 02. 비교연산자, 논리연산자 / LIKE, IN, BETWEEN, IS NULL 2020.12.19

    실제로 데이터를 가져올 때 컬럼 속의 모든 데이터를 볼 일은 자주 없다. 어느 정도 조건을 만족하는 데이터를 선택적으로 불러와야 하는 경우가 많다. ex. 특정 조건이 nn번 만족되는 데이터를 가져오기 특정 이름을 가진 데이터를 가져오기, "특정 수치 이상"인 "특정 범주"의 데이터 등등... !! 이 때 필요한 것이 WHERE 절이다 !! 실습링크 >SELECT * FROM Customers WHERE Country = 'Germany'; >> Customers 테이블에서 Country 컬럼이 'Germany'값을 가지는 데이터만 가지고 와라. 비교연산자는 주어진 좌우 값을 비교하는 연산자이다. >> =, , >=, , SELECT * FROM Customers WHERE CustomerName < "..


  8. 01. SELECT/FROM/LIMIT 2020.12.15

    SQL : 데이터베이스와 통신을 하는 언어 1) data query language(DQL) 질의어 select : 데이터를 꺼내오기 위한 것 2)data manipulation language(DML) 조작어 insert : 데이터를 데이터베이스에 쌓기 위한 것 update : 데이터 수정, delete : 데이터 삭제 데이터 분석에서는 select에 집중할 것이다. 분석의 대상이 될 데이터들을 잘 골라서 분석 환경으로 끌어와야 한다. 수정하고 넣고 지우고 하는 것은 엔지니어(개발자)의 영역. 데이터는 테이블 형태로 저장된다.ㅣ열(column), ㅡ행(row) = 표 형식 새로운 데이터가 들어올 때 맨 아래에 쌓인다. = row는 데이터 한 개를 의미 column은 데이터들의 특성을 설명한다. 실습링크..