본문 바로가기

DB/문법31

MySQL group by 키워드 -- ~별로 묶에서 처리하는 경우 : 집계하기 group by 키워드-- author_lname 별로 몇권의 책을 썼는지,  작가의 author_lname과 책의 개수를 보여주세요.SELECT author_lname, count(*)FROM booksgroup by author_lname;-- group by로 묶어진 author_lname 컬럼은 고유값으로 집계됩니다.  -- 년도별로 각각 몇권의 책이 출간되었는지, 년도와 그 년도에 출간된 책의 갯수를 알려주세요.SELECT released_year, count(*)as book_cntFROM booksgroup by released_yearorder by released_year desc; * GROUP BY 절에서 사용하는 열은 실제 테이블의 열이.. 2024. 11. 28.
MySQL Limit 키워드 -- 데이터를 끊어서 가져오는 방법 : limit 키워드 -- books 테이블의 데이터를 5개만 가져오세요.SELECT *FROM books blimit 5; 5개 데이터만 보여줍니다. 그럼 그 다음 데이터는? 한꺼번에 모든데이터를 보여주려니 로딩 너무길다!!5개씩 끊어서 보여주자! -- offset = 데이터를 가져오는 시작점-- 오프셋숫자=첫번째데이터인덱스는 0, 2번째 데이터는 1-- limit 0,5에서 0은 처음부터라는 뜻, 두번째의 5는 5개씩 가져오라는뜻 -- books테이블의 데이터를 처음부터 5개 가져오세요.SELECT *FROM books blimit 0,5;처음 데이터 0 부터 5개를 불러옵니다.  -- 그 다음의 5개도 가져오세요.SELECT *FROM books blimit 5,.. 2024. 11. 28.
MySQL Order by키워드 오름차순으로 정렬하는 키워드 order by-- author_lname으로 정렬해서 가져오기SELECT *from books bORDER by author_lname;SELECT *FROM books border by author_lname asc ;asc = 오름차순입니다. 생략하면 오름차순으로 정렬됩니다.내림차순으로 가져오기 DescSELECT *FROM books border by author_lname desc;-- 풀네임을 내림차순으로 정렬SELECT *, concat(author_fname ,' ',author_lname)as full_nameFROM books border by full_name desc;마찬가지로 함수와 조합하여 사용 가능합니다.  -- 출간년도 내림차순으로 정렬하여서 책제.. 2024. 11. 28.
MySQL Distinct 키워드 MySQL에서 키워드란?데이터베이스 작업을 수행하기 위해 사용되는 예약어입니다.이러한 키워드들은 SQL 구문의 일부로 사용되며, 데이터베이스 조작, 테이블 생성, 데이터 검색 등 다양한 작업을 수행하는 데 필요합니다.먼저 데이터를 입력, 검색, 수정, 삭제 (CRUD)하고자 했던 문장들도 키워드입니다. 키워드는 함수가 아니다!키워드는 SQL 문장의 구조를 정의합니다.이러한 키워드는 변수나 함수의 이름으로 사용할 수 없습니다.함수는 특정 연산을 수행하기 위해 설계된 코드의 집합입니다.  함수는 식별자(이름)를 가지며, 괄호 안에 매개변수를 포함할 수 있습니다. 함수는 필요에 따라 호출하여 사용합니다. 중복데이터를 제거해서 고유값(unique) 만가져오기 Distinct 키워드데이터 분석, 중복 제거, 고유.. 2024. 11. 28.
MySQL Replace() 함수 문자열의 내용을 바꾸는 함수 replace()특정 문자나 문자열을 다른 문자나 문자열로 대체하는 데 사용됩니다.replace(컬럼, '바꾸고 싶은 문자열', '바꿀 문자열') -- 책 제목에 The 가 있으면 Hello로 바꿔서 가져오자. SELECT title, REPLACE (title,'The','Hello')FROM books b ;-- 책 제목에 The가 있으면 제거하고 가져오세요.SELECT title ,REPLACE (title,'The ','')FROM books b ;' '을 이용하여 공백만 넣어주면 됩니다.  처음 만난 디버그 예제문제:책 제목을 처음부터 10글자만 가져오고, 뒷부분에는 ...을 붙여서 가져오세요."CONCAT으로 해결하기" MySQL Concat() 함수MySQL 함수.. 2024. 11. 27.
MySQL Reverse() 함수 -- 문자열의 순서를 역순으로 바꿔주는 함수 reverse()리버스 함수는 데이터 암호화와 보안, 로그 분석과 디버깅에 활용됩니다. -- author_lname을 역순으로 가져오세요.SELECT author_lname , reverse(author_lname)FROM books b ; 2024. 11. 27.
MySQL Substirng() 함수 -- 문자열 데이터의 일부분만 가져오는 함수 substring() = subrtr()-- 책 제목을 10글자만 보여주려고 합니다. 제목 컬럼은 short_title로 해주세요  SELECT title, SUBSTRING(title,1,10) as short_titleFROM books b ;Title 데이터의 첫 글자부터 10개까지 가져옵니다. SELECT title, left(title,10)from books b ;left도 같은 기능을 합니다. title 데이터의 10번째 문자열부터 끝까지의 문자열을 가져옵니다. SELECT title, substr(title,10)from books b ;-- 책 제목을 맨 뒤 7번째 글자부터 끝까지 가져오세요.SELECT SUBSTR(title,-7)FROM b.. 2024. 11. 27.
MySQL Upper()와 Lower() 함수 author_fname을 모두 대문자로 바꿔서 가져오세요. upper() SELECT author_fname ,upper(author_fname)From books b ;author_fname을 모두 소문자로 바꿔서 가져오세요. lower() SELECT author_fname, lower(author_fname)from books b ;타이틀의 앞글자는 대문자, 나머지는 소문자로 가져오세요.SELECT title, concat(upper(SUBSTR(title,1,1)),lower(substr(title,2)))from books b ;앞 글자만 대문자로 변환하려면 concat과 substr을 응용합니다. 2024. 11. 27.
MySQL Concat() 함수 MySQL 함수란?데이터베이스에서 계산을 수행하고 데이터를 조작하며 결과를 반환하는 미리 정의된 작업입니다.함수들은 복잡한 쿼리를 단순화하고 반복적인 작업을 자동화하는 데 도움을 줍니다.문자열을 순서대로 연결하여 하나의 새로운 문자열을 생성하는 함수 : concat() fname과 lname을 합쳐서 풀네임으로 조회하고싶다!SELECT *, concat(author_fname,author_lname)FROM books b ;  두 컬럼을 그냥 붙이게되서 가독성이 떨어집니다.Jhumpa Lahiri로 보이면 좋겠어요. SELECT *, concat(author_fname," ",author_lname)FROM books b ;' '로 사이를 띄워줘서 가독성은 올라갔지만함수이름이 그대로 보이는 컬럼 이름.... 2024. 11. 27.