MySQL_Workbench 18

MySQL 유저 생성하는 SQL

use mysql; # python_user 라는 계정, 비밀번호 4444로 유저 생성하는 SQL create user 'memo_user'@'%' identified by '4444'; # 이 유저가 어떤 데이터베이스를 처리할수 있는지에 대한 # 권한 설정하는 SQL # . 의 왼쪽 별표는 모든 데이터베이스 관리할수 있다는 뜻, # . 의 오른쪽의 별표는 모든 테이블을 관리할수 있다는 뜻. # yhdb.* 라고 썻다면, yhdb의 모든 테이블을 관리 할 수 있다는 뜻. grant all on memo_db.* to 'memo_user'@'%';

MySQL_Workbench 2022.01.06

MySQL round, floor 함수(반올림, 버림)

ROUND: 반올림 지정하는 소숫점 자리로 반올림한다. SELECT ROUND(135.375, 2); -- 135.38 select s.genre, round(avg(r.rating),2) as avg_rating from series s join reviews r on s.id = r.series_id group by s.genre; FLOOR: 버림 (to integer) 가장 가까운 '정수'로 버림하여 반환한다. SELECT FLOOR(135.375); -- 135 select s.genre, floor(avg(r.rating)) as avg_rating from series s join reviews r on s.id = r.series_id group by s.genre;

MySQL_Workbench 2021.12.10

MySQL case문 만들때 조심해야 할 사항 (컬럼 이름 사용법)

select students.first_name, ifnull(avg(papers.grade),0) as average, case when avg(papers.grade) >= 80 then 'PASSING' else 'FALLING' end as passing_status from students left join papers on students.id = papers.student_id group by students.first_name order by average desc; 맨위에서 as average를 사용하여 컬럼명을 바꿨다 하더라도 밑에 case 문의 avg 부분을 바꾼 컬럼명인 average로 넣어서 사용할 수 없다. 실행순서가 모두 동일하기에 인식하지 못한다.

MySQL_Workbench 2021.12.09

MySQL case문 작성법

WHEN과 THEN은 한쌍이어야 합니다. WHEN과 THEN은 다수가 존재할 수 있습니다. ELSE가 존재하면 모든 조건에 해당하지 않는 경우에 반환 값을 설정할 수 있습니다. ELSE가 존재하지 않고, 조건에 맞지 않아서 반환 값이 없으면 NULL를 반환합니다. 출처: https://extbrain.tistory.com/46 [확장형 뇌 저장소] -- case 문법 -- 년도가 2000년 보다 크면, '최근 책' 이라고 하고, -- 그렇지 않으면, '옛날 책' 이라고 하시오 select * , case when released_year >= 2000 then '최근 책' else '옛날 책' end as genre from books; 새로운 컬럼으로 만들어서 결과가 나온다.

MySQL_Workbench 2021.12.09