본문 바로가기

728x90
반응형

코딩/MySQL

(23)
mysql UNION과 UNION ALL 기본 개념과 사용법 UNION ALL은 MySQL 쿼리에서 사용되는 키워드 중 하나로, 두 개 이상의 SELECT 문의 결과를 결합하는 데 사용됩니다. UNION ALL은 중복된 행을 제거하지 않고 모든 결과를 포함하는 반면, 단순한 UNION 연산은 중복된 행을 제거합니다. 기본적인 문법은 다음과 같습니다. SELECT column1, column2, ... FROM table1 WHERE condition UNION ALL SELECT column1, column2, ... FROM table2 WHERE condition; 여기서 각 SELECT 문은 독립적인 쿼리를 나타내며, UNION ALL은 두 결과 집합을 모두 합쳐 반환합니다. 예시를 살펴보겠습니다. 두 개의 테이블을 가정하겠습니다. -- 테이블 1: empl..
SQL 오류(1067): Invalid default value for 'datetime' SET sql_mode = ''; ALTER TABLE 테이블명 ADD COLUMN 새로운컬럼명 데이터타입 AFTER 기존컬럼명; 위에 SET sql_mode = '';를 같이 실행 하면 된다.
MySQL에서 3개 컬럼을 합산하고 가장 높은 순으로 출력 SELECT (컬럼1 + 컬럼2 + 컬럼3) AS 합계 FROM 테이블명 ORDER BY 합계 DESC; 이렇게 하면 3개의 컬럼을 합산한 결과를 가장 높은 순으로 출력할 수 있다.
mysql 테이블 이름 변경 RENAME TABLE 기존 table_name TO 변경할 table_name
mysql 중복제거 SELECT DISTINCT column_name FROM table_name
mysql ONLY_FULL_GROUP_BY 사용 안함 순서대로~ SELECT @@sql_mode; ``` SET sql_mode = 'ONLY_FULL_GROUP_BY'; ``` SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
MySQL DB 느려졌을때 확인 및 해결 방법 slow log 확인하여 느린속도로 실행되는 query 찾기 SELECT * FROM mysql.slow_log; 1초이상 느려진 쿼리 확인되면, 해당 쿼리를 분석하여 속도를 높인다. process 확인하여 실행시간이 긴 프로세스 확인하기 SHOW FULL PROCESSLIST; 확인후 process id를 이용하여 삭제 KILL 프로세스ID
MySQL LIKE IN SELECT SEARCH_TEXT FROM table_name WHERE SEARCH_TEXT REGEXP '안녕|누구|세요'

728x90
반응형