DB/MySQL
-
MariaDB 설치 및 프로젝트 요구 계정 / db 추가DB/MySQL 2023. 12. 3. 00:01
windows 에서 MariaDB 설치 다운로드 아래 사이트에서 다운로드 받으면 된다. 설치는 굉장히 간단한 편! 혹시 이전에 다른 데이터베이스 시스템을 설치한 적이 있다면 설치도중에 port 번호만 3306이 아닌 다른 번호로 지정해주면 된다. 나는 mySql을 설치했었기 때문에 3307로 해주었다. 그리고 비밀번호는 데이터베이스 접속 로그인 비밀번호이기 때문에 주의해야 한다. 설치 후 변경 가능! 다운로드 : mariadb.org pwd : 그루트 환경변수 등록 자주 사용하지는 않겠지만, 필요시 당황하지 않도록 환경변수를 등록해준다. terminal로 접근할 경우, 환경변수를 등록해주지 않으면 아래와 같이 입력해야 하지만, C:\Program Files\MariaDB 11.1\bin -u root -..
-
MySQL8 계정 삭제 / 추가 / 권한부여 / 권한삭제 / 비밀번호 변경DB/MySQL 2023. 12. 2. 00:01
계정 삭제 보고 배운 사이트 : infotake.tistory 특정 IP 대역 기준 삭제 drop mysql.user '계정명'@'192.168.%'; 모든 IP 대역 기준 삭제 drop mysql.user '계정명'@'%'; 실행 확인 drop user 'zhyun'@'%'; 테스트 해보니 쿼리에서 host( 허용ip대역 )를 적어주지 않으면 자동으로 host를 전역 % 으로 인식해서 실행한다. 그렇기 때문에, select 쿼리를 사용해서 host 정보 확인 후 drop문 작성을 해주어야 할 것 같다. 계정 추가 보고 배운 사이트 : infotake.tistory 특정 IP 대역 기준 생성 create user '계정명'@'192.168.%' identified by '패스워드'; 모든 IP 대역 기준..
-
Windows Mysql Cli 접속하기DB/MySQL 2023. 12. 2. 00:01
이글을 쓰는 이유는 내 컴퓨터에 mysql server 버전을 설치했었던 기억이 있는데 비밀번호를 뭘로 했는지 기억이 안났기 때문이다..ㅋㅋㅋ🥲 메모의 중요성...🙈 비밀번호를 알아내야 하는데 터미널에서 mysql 명령어가 안먹어서 작성! mysql server 버전을 windows에 설치 한 이후부터 작성. 먼저, windows 터미널에서 mysql 명령어가 먹히지 않아서 알아보니 환경변수 등록이 되어있지 않았기 때문임을 알아내어 환경변수 추가! 1. Windows 환경변수 추가 1. 윈도우 버튼 위에서 우클릭 - 시스템 클릭 2. 고급 시스템 설정 진입 3. 환경변수 버튼 클릭 4. 시스템 변수 항목에서 Path 찾아서 클릭으로 편집창 띄움 5. 새로 만들기 클릭해서 Mysql server 폴더의 b..
-
MySQL DB 생성, USER 생성 및 권한 입력 쿼리DB/MySQL 2023. 11. 30. 00:01
DB 목록 출력 show databases; DB 생성 create database DB_NAME; USER 생성 create user 'USER_NAME'@'localhost' identified by '비밀버노'; USER 확인 후 root 권한 주고 DB에 즉각 반영 select `user` from `mysql`.`user`; show grants for 'USER_NAME'@'localhost'; grant all on `DB_NAME`.* to 'USER_NAME'@'localhost' with grant option; flush privileges;
-
프로그래머스 : 가격대 별 상품 개수 구하기DB/MySQL 2023. 11. 26. 00:01
내 코드 SELECT (PRICE div 10000) * 10000 as PRICE_GROUP , COUNT(*) as PRODUCTS FROM PRODUCT GROUP BY PRICE_GROUP ORDER BY PRICE_GROUP 정수 값을 정수로 나누는 방법 div 함수 사용 select 10 div 3 -- 결과 : 3 floor(숫자) 함수 사용 ( 나머지 버림 ) select FLOOR(10/3) -- 결과 : 3 round(숫자, 자릿수) 함수 사용 ( 반올림 ) select ROUND(10/3); -- 결과 : 3 select ROUND(10/3, 1); -- 결과 : 3.3 truncate(숫자, 자릿수) 함수 사용 ( 나머지 버림 ) select TRUNCATE(10/3, 0); -- ..
-
프로그래머스: 주문량이 많은 아이스크림들 조회하기DB/MySQL 2023. 11. 26. 00:01
내 코드 SELECT FLAVOR FROM ( SELECT j.FLAVOR, (sum(j.TOTAL_ORDER) + sum(fh.TOTAL_ORDER)) as TOTAL_ORDERS FROM JULY j LEFT JOIN FIRST_HALF fh ON j.FLAVOR = fh.FLAVOR GROUP BY j.FLAVOR ) f order by f.TOTAL_ORDERS DESC limit 3; 또는 내 코드 2 SELECT FLAVOR FROM ( SELECT j.FLAVOR, (sum(j.TOTAL_ORDER) + sum(fh.TOTAL_ORDER)) as TOTAL_ORDERS FROM JULY j LEFT JOIN FIRST_HALF fh USING (FLAVOR) GROUP BY j.FLAVOR ..
-
프로그래머스: 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기DB/MySQL 2023. 11. 26. 00:01
질문하기에서 많은 도움을 받은 코드 SELECT c.CAR_ID , c.CAR_TYPE , ROUND((c.DAILY_FEE * 30 * (100 - dp.DISCOUNT_RATE)) / 100) as FEE FROM CAR_RENTAL_COMPANY_CAR c LEFT JOIN CAR_RENTAL_COMPANY_DISCOUNT_PLAN dp ON c.car_type = dp.car_type WHERE c.car_type in ('세단', 'SUV') AND dp.DURATION_TYPE = '30일 이상' AND c.car_id not in ( SELECT car_id FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE END_DATE >= '2022-11-01' AND S..
-
프로그래머스: 이름이 없는 동물의 아이디DB/MySQL 2023. 11. 25. 00:01
내 코드 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID MySQL NULL 제어하기 🤓📝 where 에서 -- TABLE 테이블에서 column이 NULL 조건을 만족하는 모든 컬럼 출력 SELECT * FROM TABLE WHERE column IS NULL; -- TABLE 테이블에서 column이 NULL이 아닌 조건을 만족하는 모든 컬럼 출력 SELECT * FROM TABLE WHERE column IS NOT NULL select 에서 -- TABLE 테이블에서 column을 출력하는데, 값이 NULL인 데이터는 'no data' 출력 SELECT IFNULL(COLUMN, 'no data') as COLUMN F..
-
프로그래머스 : 과일로 만든 아이스크림 고르기DB/MySQL 2023. 11. 25. 00:01
다른사람 코드 _ 질문하기에서 찾음 🤓 SELECT FLAVOR FROM FIRST_HALF A JOIN ICECREAM_INFO B USING (FLAVOR) WHERE A.TOTAL_ORDER > 3000 AND B.INGREDIENT_TYPE REGEXP '^fruit+' ORDER BY TOTAL_ORDER DESC 정규식과 USING이라는 키워드를 사용한 풀이이다. 우와 🤓📝 USING 공부 USING은 ON 대신에 사용할 수 있는 키워드라고 한다. LEFT JOIN의 경우 같은 컬럼을 기준으로 두 테이블을 합치는데, 이때 ON을 사용하면 각 테이블에 있는 기준으로 한 컬럼들을 모두 가져와서 a.c_column , b.c_column 상태로 결과 테이블을 만들어주지만, USING을 사용하면 하나..