Database
-
[nestjs] TypeError: version.split is not a function (typeorm, mariaDB)Database/mysql 2023. 1. 9. 16:25
netjs 프레임워크에서 typeorm을 사용해서 mariaDB와 연동을 하려고 하는데, 아래와 같은 에러가 발생했다. query: SELECT VERSION() AS `version` [Nest] 48360 - 01/09/2023, 4:06:54 PM ERROR [TypeOrmModule] Unable to connect to the database. Retrying (2)... TypeError: version.split is not a function at parseVersion (.../src/util/VersionUtils.ts:19:13) typeorm에서 db에 연결할 때 버전을 확인하는 작업을 한다. 그 때 mysql과 mariaDB의 버전 저장 양식이 달라서, split 함수 사용 코드에..
-
[mysql] ERROR 1055... which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_byDatabase/mysql 2021. 6. 10. 15:33
mysql에서 날짜별 통계 관련 쿼리문을 작성할때 group by를 자주 사용하게 된다. 평소에 하던대로 쿼리를 짜서 콘솔에 테스트를 해보니 아래와 같은 에러가 발생했다. ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'date' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 에러 원인은 'only_full_group_by' 때문이다. 그래서 쿼리문을 수정하던지, 아니면 없애면 된다. 없애는..
-
[mysql] DB 기간별 SELECT 방법Database/mysql 2021. 5. 28. 11:31
하루 SELECT * FROM 테이블명 WHERE 날짜컬럼명 BETWEEN DATE_ADD(NOW(),INTERVAL -1 DAY ) AND NOW(); 일주일 SELECT * FROM 테이블명 WHERE 날짜컬럼명 BETWEEN DATE_ADD(NOW(),INTERVAL -1 WEEK ) AND NOW(); 한달 SELECT * FROM 테이블명 WHERE 날짜컬럼명 BETWEEN DATE_ADD(NOW(),INTERVAL -1 MONTH ) AND NOW();
-
[solved] ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'db.table.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_byDatabase/mysql 2020. 9. 23. 10:15
mysql에서 sql문에 'GROUP BY'를 사용하는데 아래와 같은 에러가 발생했다. ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'db.table.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 쉽게 말하자면 sql_mode=only_full_group_by로 되어 있으면 잘못된 GROUP BY 사용을 제한한다. 엄격하게 용도에 맞게 사용 됐을때만 쿼리가 성공한다. 나의 경우 테이..
-
[postgresql] docker로 실행 후 쉘에 접속하는 방법!Database/mysql 2020. 5. 27. 16:35
이미지 어노테이션을 해야해서 cvat를 깃허브에서 받아 설치했다. 링크 메뉴얼 따라 설치 후 실행을 하면 아래 그림과 같다. (참고로 난 MacOS) 여기서 나는 postgresql의 쉘에 접근해보고자 한다. 참고로 한번도 postgresql을 써본적이 없다. cvat는 기본적으로 아래와 같이 DB를 세팅한다. DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'HOST': 'cvat_db', 'NAME': 'cvat', 'USER': 'root', 'PASSWORD': os.getenv('POSTGRES_PASSWORD', ''), } } 도커에 bash 접속 local# exec -it cvat_db bash 아래와 같이 입력..