전체 글 212

[MySQL] 프로그래머스 조건에 맞는 사원 정보 조회하기

문제:2022년도 평가 점수가 가장 높은 사원들의 점수, 사번, 성명, 직책, 이메일을 조회 해결방법:1. GROUP BY 로 평가 점수 상하반기 SUM()2. 2022년도에 해당하는 점수만 계산하도록 설정3. 가장 높은 평가 점수 확인을 위해 MAX() 사용4. 여러 테이블 조인에 INNER JOIN 사용5. HAVING 을 사용하여 최고 점수를 가진 레고드 반환 예시 코드:SELECT SUM(G.SCORE) SCORE, G.EMP_NO, E.EMP_NAME, E.POSITION, E.EMAILFROM (SELECT * FROM HR_GRADE WHERE YEAR = 2022) GINNER JOIN HR_EMPLOYEES EON G.EMP_NO = E.EMP_NOGROUP BY G.E..

[SQL] 연습 2024.12.08

중세 서양 철학 - 동서양의 지혜를 잇다: 아비센나의 철학 이야기

안녕하세요! 오늘은 중세 이슬람 세계의 위대한 사상가 아비센나에 대해 이야기해보려고 합니다.어려운 철학 이야기라고 걱정하지 마세요. 최대한 쉽게 설명해드리겠습니다. 천재의 탄생아비센나는 980년에 현재의 우즈베키스탄 지역에서 태어났습니다.그는 어릴 때부터 놀라운 재능을 보였는데요, 10살도 되기 전에 이미 이슬람 경전인 코란을 모두 외웠다고 합니다.마치 어린 모차르트처럼 말이죠! 철학자이자 의사로서의 삶아비센나는 철학자이면서 동시에 뛰어난 의사였습니다.특히 그의 의학 지식은 매우 뛰어나서, 젊은 나이에도 많은 사람들이 그에게 치료를 받으러 왔다고 해요.그는 마치 중세 시대의 종합 병원 같은 존재였던 거죠! 그의 의학 지식은 단순히 질병 치료에만 국한되지 않았습니다.그는 "의학의 정전(Canon of Me..

일상 2024.12.07

[MySQL] 취소되지 않은 진료 예약 조회하기

문제PATIENT, DOCTOR 그리고 APPOINTMENT 테이블에서 2022년 4월 13일 취소되지 않은 흉부외과(CS) 진료 예약 내역을 조회- 진료예약번호, 환자이름, 환자번호, 진료과코드, 의사이름, 진료예약일시 컬럼을 출력- 진료예약일시를 기준으로 오름차순 정렬 해결방법1. 조건 3개를 동시에 설정: 예약일시, 진료과코드, 취소여부2. APPOINTMENT 테이블을 기준으로 PATIENT, DOCTOR 테이블을 INNER JOIN3. 정렬 조건 설정 예시 코드SELECT APNT.APNT_NO, P.PT_NAME, P.PT_NO, APNT.MCDP_CD, D.DR_NAME, APNT.APNT_YMDFROM APPOINTMENT APNT INNER JOIN PATIENT P ON P.PT_..

[SQL] 연습 2024.12.06

Google AI Studio 에서 그라운딩(Grounding) 활용하기

Gemini는 Google의 최신 AI 모델로, 강력한 자연어 처리 능력과 함께 멀티모달 기능을 제공합니다. 특히 최근에는 Google이 Gemini API와 Google AI Studio에 새로운 Google Search에 기반한 그라운딩 기능을 도입했습니다.따라서 이번 포스팅에서는 Google AI Studio 에서 Google Search 기반 그라운딩을 무료로 사용할 수 있는 방법을 상세히 알아보겠습니다. - 그라운딩이란?일반적으로 그라운딩(Grounding)은 AI 모델의 응답을 신뢰할 수 있는 문서나 데이터에 "접지(ground)"시키는 기술입니다.이러한 기술이 필요한 이유는 AI의 환각(hallucination) 현상을 줄이고, 응답의 출처를 명확히 추적하기 위해서 입니다.결과적으로는 생성형..

워크시트 2024.12.01

무료 AI 웹사이트 추천: 사진 속 물체 제거하기

여행 중 찍은 인생샷에 지나가는 행인이 찍혔거나, 풍경 사진에 전봇대가 거슬리시나요? 이제는 복잡한 포토샵 없이도 클릭 몇 번으로 깔끔하게 지울 수 있답니다. 아래 사이트에 편집을 원하는 사진을 올리고,브러시의 크기를 정해서 삭제하고 싶은 부분을 설정해주면 됩니다. AI 의 결과물이 항상 일관성 있게 나오지는 않기 때문에, 원하는 결과를 얻기 위해서 여러번 시도해야 할수도 있습니다.저는 브러시의 크기를 좀 작게 해서 뒤에 있는 사람을 삭제해보았습니다. 이상한 부분없이 잘 삭제된 결과를 얻을 수 있었습니다. 사진을 다운받을때 고화질을 원하면 가입을 해야하고, 아니면 무료로 다운이 가능합니다.필요하신 분들은 잘 사용하시기 바랍니다.감사합니다. https://www.photoroom.com/tools/remo..

일상 2024.11.30

[MySQL] 프로그래머스 자동차 대여 기록에서 대여 가능여부 구분하기

문제:자동차 ID와 AVAILABILITY 리스트를 출력- 2022년 10월 16일에 대여 중인 자동차인 경우 '대여중' 이라고 표시하고, 대여 중이지 않은 자동차인 경우 '대여 가능'을 표시- 반납 날짜가 2022년 10월 16일인 경우에도 '대여중'으로 표시해주시고 결과는 자동차 ID를 기준으로 내림차순 정렬 해결방법:1. IF 문과 BETWEEN A AND B 를 활용하여 가능여부 판단하기2. GROUP BY 를 통해 자동차별 가능 여부 정리하기3. 마지막으로 CASE 문으로 원하는 형태의 출력 만들기 예시 코드:SELECT CAR_ID, CASE SUM(IF(DATE("2022-10-16") BETWEEN START_DATE AND END_DATE, 1, 0))WHEN 1 THEN "대여중"WHE..

[SQL] 연습 2024.11.29

[MySQL] 프로그래머스 재구매가 일어난 상품과 회원 리스트

문제:동일한 회원이 동일한 상품을 재구매한 데이터를 구하여, 재구매한 회원 ID와 재구매한 상품 ID를 출력 - 회원 ID를 기준으로 오름차순 정렬, 상품 ID를 기준으로 내림차순 정렬 해결방법:1. 유저별, 상품별 재구매건이므로 GROUP BY 로 조회2. 조회한 유저별, 상품별 레코드가 중복일 경우 COUNT(1) 한 값은 2 이상3. ORDER BY로 정렬 처리하기 에시 코드:SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_IDHAVING COUNT(1) > 1ORDER BY USER_ID ASC, PRODUCT_ID DESC;

[SQL] 연습 2024.11.24

[GCP] Google Colab Enterprise와 Gemini로 손쉽게 대시보드 이미지 분석 및 보고서 자동 생성하기

데이터 시각화된 대시보드 이미지를 매번 일일이 확인하고 보고서를 작성하는 것은 번거로운 작업입니다. 이번 포스팅에서는 Google Colab Enterprise와 Gemini를 활용하여 Storage Bucket에 저장된 대시보드 이미지를 자동으로 분석하고, 그 결과를 바탕으로 현황 보고서를 생성하는 방법을 소개합니다.예시 코드 전체도 맨 아래에 작성해두었으니 필요하신 분은 참고하시면 됩니다.왜 Google Colab Enterprise인가?Google Colab Enterprise는 Google Cloud Platform의 강력한 기능을 제공하면서도, 익숙한 Jupyter Notebook 환경을 제공합니다. 특히, 인증 절차 없이 Google Cloud 환경에 있는 Storage Bucket에 손쉽게 ..

워크시트 2024.11.23

1회 경영정보시각화능력 실기 합격 후기

올해 처음 시행한 경영정보시각화능력 시험에 필기와 실기를 모두 합격하여 후기를 작성합니다.일단 합격 인증샷부터 올려야겠죠? - 경영정보시각화능력 시험이란?경영정보시각화능력 시험은 대한상공회의소에서 시행하는 국가기술자격 시험의 한 종류입니다.등급 구분은 없이 단일등급이며, 필기와 실기로 구성되어 있습니다.필기의 경우 객관식 시험이고, 실기는 컴퓨터 작업형으로 진행하게 됩니다.실기 시험에 사용할 프로그램으로는 태블로와 파워BI 가 있기 때문에 편한 프로그램을 선택하여 진행할 수 있습니다. - 시험을 보게된 이유일단 데이터 시각화 관련 시험 중에 국가기술자격이 처음 생긴 것으로 알아서 일단 한번 봐야겠다는 생각이 들었습니다.사실 태블로를 접해서 사용한지 거의 3년 가까이 되었으니, 많이 익숙한 프로그램이었습니..

일상 2024.11.20

중세 서양 철학 - 플로티노스

오늘은 데이터와는 상관이 없을지 몰라도 최근 철학책을 읽다 어려워서 정리하며 남기는 포스팅을 올려보겠습니다. - 플로티노스, 신플라톤주의의 창시자플로티노스는 기원후 3세기 로마 제국의 북아프리카 출신의 철학자입니다. 라파엘로의 아테네 학당 그림에서 플라톤과 아리스토텔레스 사이에 위치한 인물이 바로 그입니다.  5-600년 전에 살았던 플라톤을 존경하여 그의 철학을 계승했지만, 동시에 독자적인 신플라톤주의를 창시했습니다.- 플라톤 철학과의 비교: 이원론 vs 유출설플로티노스 이전의 플라톤은 세계를 이데아의 세계와 현실의 세계로 이분화하여 설명했습니다. 이데아의 세계는 완전하고 가치 있는 세계이며, 현실의 세계는 이데아를 모방한 불완전한 세계로 보았습니다. 이는 플라톤의 이원론으로, 현실 세계의 존재 이유에..

일상 2024.11.10

[MySQL] 프로그래머스 잡은 물고기의 평균 길이 구하기

문제:잡은 물고기의 평균 길이를 출력- 잡은 물고기의 길이가 10cm 이하인 경우 NULL 로 처리되어있음- 평균 길이는 소수점 3번째 자리에서 반올림 해결방법1. IFNULL() 함수로 길이가 10cm 이하인 경우에 대해서 10으로 값 설정2. 평균 길이는 AVG, ROUND 를 활용 예시 코드SELECT ROUND(AVG(IFNULL(LENGTH, 10)), 2) AVERAGE_LENGTHFROM FISH_INFO;

[SQL] 연습 2024.11.09

[GCP] Vertex AI Workbench 에서 주피터노트북 사용하기

Vertex AI Workbench 에서는 데이터 사이언스용 인스턴스를 생성하여 주피터노트북을 사용할 수 있습니다.생성한 인스턴스에서는 주피터노트북을 사용할때, Vertex AI, 빅쿼리, GCS 등을 연결하여 사용할 수 있기 때문에기존에 연관된 서비스들을 사용하고 있다면 더 편하게 환경을 세팅해서 작업이 가능할 것 같습니다. 텐서플로, 파이토치 프레임과 같은 딥러닝 패키지가 사전 설치되어 있고, 원하는 세팅으로 인스턴스를 생성해 볼 수 있습니다.이번 포스팅에서는 인스턴스를 생성해보고 실행하는 과정까지를 다뤄보겠습니다. 1. Vertex AI → 대시보드에 들어가서 모든 권장 API 사용 설정을 클릭합니다.구글클라우드가 자동으로 권장 API 를 활성화할 때까지 잠시 기다려 줍니다. 2.  아무것도 생성되..

워크시트 2024.11.03

[MySQL] 프로그래머스 대장균의 크기에 따라 분류하기1

문제:대장균 개체의 ID(ID) 와 분류(SIZE)를 출력하는 SQL 문을 작성- 대장균 개체의 크기가 100 이하라면 'LOW', 100 초과 1000 이하라면 'MEDIUM', 1000 초과라면 'HIGH' 라고 분류- 개체의 ID 에 대해 오름차순 정렬  해결방법:1. SELECT 절에서 CASE 문으로 개체 크기에 따라 분류하기 예시 코드:SELECT ID, (CASE WHEN SIZE_OF_COLONY 100 AND SIZE_OF_COLONY 1000 THEN "HIGH" END) SIZEFROM ECOLI_DATAORDER BY ID ASC;

[SQL] 연습 2024.11.02