본문 바로가기

기타

[MySQL] 입양 시각 구하기 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다. 답: SELECT HOUR(DATETIME),COUNT(HOUR(DATETIME)) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) >= 09 AND HOUR(DATETIME) 더보기
[MySQL] NULL처리 입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 "No name"으로 표시해 주세요. 문제 풀이 1: SELECT ANIMAL_TYPE, CASE WHEN NAME IS NULL THEN "No name" ELSE NAME END "NAME" ,SEX_UPON_INTAKE FROM ANIMAL_INS; 문제 풀이2: SELECT ANIMAL_TYPE,IFNULL(NAME,"No name"), SEX_UPON_INTAKE FROM ANIMAL_INS; 문법은 맞았는 데, 왜 틀렸나 했더니, 컬럼 순서가 ANIMAL_T.. 더보기
[MySQL] 오랜 기간 보호한 동물(2) 입양을 간 동물 중, 보호 기간이 가장 길었던 동물 두 마리의 아이디와 이름을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 기간이 긴 순으로 조회해야 합니다. 보호기간이 가장 긴 동물은 입양을 간 날짜에서 보호가 시작된 날짜를 빼면 그만큼 보호소에 있었던 기간이 된다. 내가 작성한 답: SELECT I.ANIMAL_ID, I.NAME FROM ANIMAL_INS I JOIN ANIMAL_OUTS O ON I.ANIMAL_ID = O.ANIMAL_ID ORDER BY O.DATETIME - I.DATETIME DESC LIMIT 2; 다른 사람이 작성한 답: SELECT A.ANIMAL_ID, A.NAME FROM ANIMAL_INS A, ANIMAL_OUTS B WHERE A.ANIMAL_ID =.. 더보기
[MySQL] 여러기준으로 정렬하기 문제명: 여러 기준으로 렬하기 SQL: MySQL 성격이 급하다 보니까, 지문을 제대로 읽지 않고 풀려고 해서 계속 오답이 나오는 경우가 있다. 정답: SELECT ANIMAL_ID,NAME,DATETIME FROM ANIMAL_INS ORDER BY NAME ASC, DATETIME DESC; 더보기
[Python] 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면? [ 문제 ] 10보다 작은 자연수 중에서 3 또는 5의 배수는 3, 5, 6, 9 이고, 이것을 모두 더하면 23입니다. 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두 더하면 얼마일까요? [풀이] 10 이하를 먼저 풀어보자. 그러면 같은 맥락으로 문제를 풀 수 있다. 여기서 주의할 점은 3과 5의 공배수이며, 중첩될 수 있는 점이다. 이 부분만 유의하면 된다. 정답: a = list() b= 1 while b < 1000: if b % 3==0 or b % 5 == 0: a.append(b) b =b+1 print(sum(a)) #답: 233168 더보기
Jupyter Notebook 500:Internal Server 에러 해결 간만에 Jupyter Notebook을 사용하려고 열었는 데, 500:Internal Server 에러가 떳다. 인터넷에 찾아보니, 간단하게는 하기 코드를 터미널 prompt에 입력하고, 커널을 껏다가 키면 해결이 가능하다고 한다. pip install --upgrade jupyter 하지만, 난 상기 코드를 입력해도 해결이 되지 않아, 아래 명령어들을 입력하고 커널을 껏다가 키니까 해결되었다. pip install --upgrade jupyterhub pip install --upgrade --user nbconvert conda install nbconvert==5.4.1 pip install --upgrade jupyter 그래도 해결이 안되면 스택오버플로우를 참고하자 더보기
[ IT 지식 ] 비트, 이진수, 비트 디지털 정보를 표현하는 가장 기본적인 방식은 비트를 이용하는 것이다. 비트는 0 또는 1중 하나의 값을 사용하고, 다른값은 사용하지 않는 숫자다. 이는 십진수에서 0부터 9까지 10개의 값을 사용할 수 있는 것과 대조적이다. 두개의 값 중 하나를 선택하는 정보라면 무엇이든 비트 한 개로 인코딩하거나 표현할 수 있다. 켜짐/꺼짐, 참/거짓, 예/나이오 등과 같이 이진 선택의 경우의 수는 매우 많다. 둘 중 어느쪽이 선택됐는지 식별하는 데 비트 한 개면 충분하다. 그러나 우리는 더 많은 선택지를 표시하거나 더 복잡한 정보를 표현할 방법이 필요하다. 그러기 위해서는 비트를 여러개 사용하여, 0과 1로 만들 수 있는 다양한 조합에 의미를 할당하면 된다. 예를 들어, 비트 두 개를 사용하여 대학의 네 개 학.. 더보기
[ IT 지식 ] 텍스트 디지털화하기: 아스키코드, 유니코드 컴퓨터가 정보를 표현하는 방식에 관해 다음 세 가지 기본 아이디어를 바탕으로 살펴보겠다. 첫째, 컴퓨터는 디지털 처리 장치다. 즉, 컴퓨터는 불연속적인 덩어리로 입력받고, 불연속적인 값을 갖는 정보를 저장하고 처리한다. 디지털 정보는 기본적으로 수에 불과하다. 반면 아날로그 정보는 연속적으로 변하는 값을 뜻한다. 둘째, 컴퓨터는 정보를 비트로 표현한다. 비트는 이진 숫자로, 0 또는 1인 수이다. 컴퓨터는 정보를 비트로 표현한다. 컴퓨터 내부의 모든 것은 사람들에게 익숙한 십진수가 아닌 비트로 표현된다. 셋째, 비트는 모여서 더 큰 정보를 표현한다. 숫자, 문자, 단어, 이름, 소리, 사진, 영화부터 이러한 정보를 처리하는 프로그램을 구성하는 명령어에 이르기까지 모두 비트가 모여 표현된다. 텍스트 디지털.. 더보기