mysql(15)
-
[MYSQL] DB에 Schema와 Table들을 조회하자
SELECT * FROM information_schema.tables 그냥 위의 한줄만 해도 된다. 위의 쿼리를 돌리면 아래와 같이 Table들의 정보들이 담겨있는 Field들을 볼 수 있는데 여기서 원하는 것을 where절에서 걸어주고 출력한다. ELECT * FROM information_schema.tables WHERE TABLE_TYPE = 'BASE TABLE' AND ROW_FORMAT = 'Dynamic' AND ENGINE = 'InnoDB' AND NOT TABLE_SCHEMA = 'mysql' AND NOT TABLE_SCHEMA = 'template' AND NOT TABLE_SCHEMA = 'sys' ORDER BY TABLE_SCHEMA 나 같은 경우에는 이런식으로 직접 만든 ..
2020.12.17 -
MySQL 특정단어 포함까지 글자 잘라낸 후 SELECT 하기
특정 단어 포함된 것 까지 잘라내기 후 SELECT 하기 가끔 데이터를 보여줄 때 어느 부분 이전만 잘라내서 select 하여 가져올 경우가 있는데 이럴 때 데이터를 가공하여 처리를 할 수가 있다. 예를 들어 "_" 언더바까지만 잘라낸다고 하면 1. 언더바의 위치를 찾고 2. 위치만큼 글자를 잘라낸다. 정도가 될 수 있는데 다행히도 내장 함수들이 있어서 너무 간편하게 자를 수 있다. TRIM(SUBSTR(ItemName, 1,INSTR(ItemName,'_')-1)) ▶ TRIM : 공백을 제거해주는 함수 ▶ SUBSTR : 글자의 시작부터 길이만큼 글자를 잘라냄 SUBSTR(대상 문자, 시작인덱스, 길이) ▶ INSTR : 특정문자의 위치를 리턴 함 INSTR(대상 문자, 찾을 문자) 즉, 언더바의 위..
2020.06.02 -
MySQL 비슷한 항목 그룹해서 SELECT
조건 : 언더바(_) 가 포함 되는 값이라면, 언더바(_) 기준으로 글자를 잘라내기 한 다음 COUNT한다. 위와 같은 테이블이 있고 우측처럼 SELECT 하고 싶을 때 사용할 수 있다. # 특정 단어를 포함해서 COUNT 하기 SELECT `Type` , IF(INSTR(ItemName,'_')
2020.04.17 -
(MySQL) 계정 생성, 계정 확인, 계정 모든권한부여, 계정 권한 확인
MySQL 서버 접속 mysql -h dbname -u myaccount -p # -p 옵션 입력 시 password 입력할 수 있음 MySQL 계정 생성 create user 'honggildong'@'%'identified by 'suns1234'; # root 비밀번호 MySQL 계정 확인 select host, user from mysql.user; 계정 권한 부여 GRANT ALL PRIVILEGES ON *.* TO 'honggildong'@'%'; # 모든 권한 부여 GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'honggildong'@'%'; # 특정 권한 부여 MySQL 계정 변경 사항 반영 flush privileges; MySQL 권한 확인 하기..
2020.04.17 -
MySQL 다른 테이블의 정보 가져오기
SELECT mem.t_pjt AS Project, mem.t_model AS Model, mem.t_Step AS Step, mem.t_mem AS `name`, IF((SELECT lv.`역량` FROM `as`.`manage_memlevel` lv WHERE lv.`name` = mem.t_mem LIMIT 1) IS NULL,0.0, (SELECT lv.`역량` FROM `as`.`manage_memlevel` lv WHERE lv.`name` = mem.t_mem LIMIT 1)) AS LEVEL, IF((SELECT 주특기 FROM `as`.`manage_meminfo` jt WHERE mem.t_mem = jt.`이름`) IS NULL,'데이터 없 음', (SELECT 주특기 FROM `as..
2020.04.17 -
MySQL 테이블 이름변경
Mysql rename table name 가끔 create table할 때 이름을 잘못 쓴적이 있을 것이다... 이 때 아래 처럼 코드를 치면 ... 변경 된다. RENAME TABLE `원래` TO `변경` https://dev.mysql.com/doc/refman/8.0/en/rename-table.html
2019.06.19