SQL(3)
-
SQL - ONLY_FULL_GROUP_BY SQL 쿼리 실패
GROUP BY를 사용하는 경우, SELECT할 수 있는 컬럼은 GROUP BY에 나열된 컬럼과 SUM(), COUNT() 같은 집계 함수로 한정 됩니다. SQL 표준 문법은 GROUP BY 사용시 SELECT 의 칼럼 중 집계함수에 쓰이는 것을 제외한 모든 칼럼을 기입해야 한다. 내가 사용한 해결법 비 집계 칼럼에 ANY_VALUE() 함수 사용하여 문제를 해결 했다. 업데이트 예정 기본적인 해결 방법 - sql_mode 에서 ONLY_FULL_GROUP_BY 설정을 제외한다. ex) SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'; - 설정파일(my.cnf)에서 ONLY_FULL_GROUP_BY 를 찾아 삭제한다.
2022.09.07 -
SQL - GROUP BY
GROUP BY? SQL 에서 GROUP BY 구문은 하나 이상의 rows(열) 로 columns(행) 을 그룹화할 때 사용 됩니다. GROUP BY 구문은 MIN(),MAX(),SUM(),AVG() 그리고 COUNT() 등 계산을 도와주는 함수와 함께 사용됩니다. Example. SELECT country , COUNT(*) AS number FROM customers GROUP BY country; 위의 SQL 구문은 country 로 그룹화 하고 있습니다. 그리고 COUNT(*)를 이용하여 그룹화 된 country의 갯수를 구하고 있습니다. 이미지 출처 : https://www.programiz.com/sql/group-by
2022.09.06 -
SQL - Join
Join? Join문은 둘 이상의 테이블 사이의 related column 을 기반으로 두개의 테이블을 결합하는데 사용 됩니다. 기본구조 1) 일반 SELECT 테이블.컬럼, 테이블.컬럼 FROM 테이블1,테이블2 WHERE 조건 Join의 종류 INNER JOIN = 두 테이블에 모두 일치하는 데이터가 존재해야 조회됨 LEFT JOIN = 기준인 왼쪽테이블의 모든 데이터가 조회되고 JOIN되는 테이블에 관계되는 데이터가 존재할 경우에 해당 데이터를 참조 할 수 있다. [ 해당 JOIN 문을 가장 많이 사용한다고 알고 있음 ] RIGHT JOIN = 기준인 오른쪽테이블의 모든 데이터가 조회되고 JOIN되는 테이블에 관계되는 데이터가 존재할 경우에 해당 데이터를 참조 할 수 있다. FULL JOIN = F..
2022.09.05