본문 바로가기

Database16

[Programmers] NULL 처리하기(풀이 성공) 문제 다음과 같은 테이블 ANIMAL_INS가 주어진다. 동물의 종, 이름, 성별 및 중성화 여부를 ID 순으로 조회하라. 단, 이름이 없는 동물의 경우 'No name'으로 표시되도록 하라. 내 코드: SELECT ANIMAL_TYPE, NVL(NAME, 'No name'), SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID; Comment: NULL값을 다른 값으로 치환해주는 함수 NVL의 활용 가능 여부를 묻는 문제입니다. NVL은 SELECT 절에서 사용할 수 있으며, NVL(NULL 값이 포함된 column, '치환할 값')으로 씁니다. 2021. 5. 12.
[Programmers] 최솟값 구하기(풀이 성공) 문제 다음과 같은 테이블 ANIMAL_INS가 주어진다. 동물 보호소에 가장 먼저 들어온 동물이 언제 들어왔는지를 조회하라. 내 코드: SELECT DATETIME FROM (SELECT * FROM ANIMAL_INS ORDER BY DATETIME) WHERE ROWNUM=1; Comment: '언제' 들어왔는지를 조회하는 것이므로 DATETIME을 조회해야 합니다. 가장 먼저 들어온 동물을 찾기 위해서는 ORDER BY를 통해 DATETIME을 기준으로 테이블을 정렬하고, ROWNUM으로 첫 번째 값을 꺼내면 됩니다. 하지만 ORDER BY의 실행 순서는 가장 나중이므로, 그냥 썼다가는 엉뚱한 값을 조회할 수 있습니다. 이 때는 FROM 뒤에 괄호를 열어 미리 정렬을 해주는 것으로 순서를 앞당기고,.. 2021. 5. 12.
[MySQL]기본값 utf8로 설정하기 이 게시물은 로컬에서 MySQL을 사용할 때, 기본 설정을 utf8로 설정하는 방법에 대해 설명한다. utf8로 설정을 해두지 않을 경우, 테이블에 들어가는 값이 한글일 경우 깨질 위험성이 있다. 특히 콘텐츠가 많이 들어가는 앱의 경우 이러한 부분을 신경써야 한다. 상세한 방법은 다음과 같다. 1. my.ini 경로 확인 설정을 바꾸기 위해서는 먼저 my.ini라는 파일을 찾아야 한다. 실행창에서 services.msc를 입력한다. 서비스(로컬) 목록에서 'MySQL80' 찾아 마우스 오른쪽 클릭, [속성] 클릭. 주소창의 경로를 확인한다. 위의 주소에서 my.ini 파일의 경로를 찾을 수 있다. MySQL을 Installer로 설치했을 때는 my.ini 파일이 ProgramData 안의 해당 경로에 생.. 2021. 5. 4.
[MySQL]git 저장소의 DB와 로컬 DB 연결하기 django로 서비스를 개발할 때, git flow로 작업하는 다른 개발자와 MySQL DB를 연결, 연동하는 방법에 대한 문서이다. MySQL Community 무료 버전과 MySQL workbench가 이미 설치된 상태라고 가정하겠다. git flow로 개발을 진행할 때면 팀원들이 같은 데이터베이스를 쓰고 수정하도록 연동하는 작업이 필요하다. 이 때 MySQL Commend Line Client와 Pycharm을 활용해 이를 수행할 수 있다. 이 문서에서는 원격 저장소의 develop 브랜치에 이미 기본 DB가 생성된 상태라고 가정한다. 먼저 git bash를 통해 origin과 develop 브랜치를 clone하도록 하자. $ git clone [프로젝트 원격 저장소 repository URL] #.. 2021. 5. 4.