MYSQL (11) 썸네일형 리스트형 MySQL 사용자 생성 및 권한 생성 CREATE USER MySQL에서 사용자 생성할 떄 CREATE USER 'test'@'localhost' IDENTIFIED BY '1111'; MySQL에서 사용자에게 모든 권한 줄 때 GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost'; MySQL에서 사용자 삭제할 때 DROP USER 'test'@'localhost'; 맨날 검색해서 사용해서 블로그에 적어놓기..!!! MySQL 테이블 복사 및 이름 변경 몇 개월 전에 짜놓은 쿼리가 데이터가 얼마 안될 때는 몰랐는데, 조회 갯수가 1억개 정도 넘어가니까 쿼리 속도가 3초가 넘어가는 것을 알게 됐다. 원인을 찾아보니, WHERE 조건에 있는 컬럼중에서 인덱스가 적용 안된게 있었다. 5초간격으로 서버에서 데이터를 받아오는 테이블이라서 어떻게 하나 고민이었다. 인덱스를 추가해야 될거 같은데, mysql 인덱스 추가를 검색해보니 추가라기보다는 인덱스를 지우고 다시 인덱스를 생성해야 되는 식이었다. 대표님한테 여쭤보니 화이트보드에다가 순서대로 하라고 친절하게 알려주셨다. 원본 테이블 복사후에 RSENAME해서 복사테이블과 원본테이블을 바꿔치기 하고, 그 사이에 인덱스를 새로 추가한다. 그리고 다시 RENAME으로 복사한 테이블과 원본 테이블의 이름을 바꿔주고, 인.. delete from where 날짜 범위 지정 테이블에서 데이터를 삭제할 때, DELETE 를 사용하면 되고, WHERE절 없이 명령어를 실행하면 다 날라가므로 주의해야합니다. 저는 WHERE 범위를 날짜로 다음과 같이 범위를 지정했습니다. FROM TABLENAME WHERE TOT_DATE >= DATE_FORMAT('2023-06-21 00:00:00' ,'%Y-%m-%d %H:%i:%s') AND TOT_DATE DELIMITER MySQL MySQL에서 DELIMITER이란 무엇인가... DELIMITER $$ CREATE PROCEDURE P_SET_TMP_DATE() BEGIN DECLARE i INT DEFAULT 0; DELETE FROM ZTMP_DATE_DATA WHERE DATE_FORMAT(DT_1MI, '%Y-%m-%d') = DATE_FORMAT(sysdate(), '%Y-%m-%d'); WHILE (i < 1440) DO INSERT INTO ZTMP_DATE_DATA(DT_1MI) VALUE(DATE_ADD(CONCAT(DATE_FORMAT(sysdate(), '%Y-%m-%d'), ' 00:00:00'), INTERVAL i MINUTE)); SET i = i + 1; END WHILE; END$$ DELIMITER.. mariadb 컬럼명 조회 MARIA DB 에서 컬럼며을 조회해서 값을 쓰고 싶은데.... 검색해서 알게되었다! 아래 블로그 참고!! SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'test' AND TABLE_NAME = 'user'; https://bskyvision.com/entry/MariaDB-%ED%85%8C%EC%9D%B4%EB%B8%94-%EC%BB%AC%EB%9F%BC%EB%AA%85%EB%93%A4%EB%A7%8C-%EC%9D%BD%EC%96%B4%EB%82%B4%EA%B8%B0 [MariaDB] 테이블 컬럼명들 읽어내기 오늘은 MariaDB에서 테이블의 컬럼명들을 읽어내는 방법에 대해 소개해드리도록 하겠습니다. 우선 예시를 위해 .. Mysql 에러 execute command denied to user ~ for routine mysql 쿼리 중.. case 문 작성하고 있었는데 에러남... execute command denied to user ~ for routine 원인은 콤마를 빼먹은 것이었음!!! case앞에 괄호... 콤마를 빼먹었고... 지금은 다시 잘 적어줌. 콤마 안빼먹으려고 앞에다가 위치 시킨건데도 빼먹다니..!!!! SELECT a.TRMNL_ID2 ,a.TRMNL_ERR ,a.PM2_5 ,a.PM10 ,(CASE a.PM10 WHEN a.PM10 < 30 THEN '좋음' WHEN a.PM10 < 80 THEN '보통' WHEN a.PM10 < 150 THEN '나쁨' ELSE '매우나쁨' END) AS PM10_str ,a.TMPR_VAL ,a.HMDT_VAL ,a.OCRN_DT ,a.SCN_ID FRO.. 쿼리 연습 mysql left join on 2개시 and Mysql 쿼리를 연습하다 남들이 해놓은거 많이 봐서 잘 할줄 알았는데 아니었다. 역시... 백문이불여일타!!!!! 서브쿼리 지양하기! 처음에는 이런식으로 쿼리를 짬 SELECT TRMNL_ID, MNFC_NM, MDL_NM, MNFC_SRL_NO , GTWY_ID , ( SELECT tb.USIM_NO FROM M_GTWY_INF AS ta LEFT JOIN M_USIM_INF AS tb ON ta.USIM_ID = tb.USIM_ID WHERE ta.GTWY_ID = a.GTWY_ID ) AS USIM_NO -- 유심번호 , TRMNL_NM , ( SELECT SCN_NM FROM m_scn_inf WHERE SCN_ID = ( SELECT td.SCN_ID FROM m_dust_trmnl_inf A.. mysql concat lpad max cast right unsigned SELECT CONCAT('KM-', LPAD(MAX(cast(right(a.U_ID, 7) AS UNSIGNED)+1), 7, 0)) FROM testTable AS a 여러 문자열를 하나의 문자열로 합치기 (CONCAT 함수) https://extbrain.tistory.com/52 -------------------------------------------------------------------- 문자열 부분 가져오기 (LEFT, MID, RIGHT) https://extbrain.tistory.com/62 ex ) SELECT RIGHT('abcdefg', 3); 결과 : efg ---------------------------------------------------------------.. 이전 1 2 다음