메인 콘텐츠로 건너뛰기

VillageSQL is a drop-in replacement for MySQL with extensions.

All examples on this page work on VillageSQL. Install Now →
감성 분석은 텍스트가 긍정, 부정, 중립 중 어떤 감정을 표현하는지 알려 줍니다. 가장 흔한 사용 사례는 제품 리뷰와 지원 티켓입니다 — 모든 행을 읽지 않고도 고객이 만족하는지 불만인지 한눈에 아는 것입니다. MySQL에는 내장 감성 함수가 없습니다. VillageSQL의 ai_prompt()가 그 기능을 추가합니다.

표준 접근법: 애플리케이션 계층 감성 분석

일반적인 설정은 MySQL 밖에서 감성 점수를 매깁니다 — 행을 Python 스크립트로 가져와 감성 라이브러리나 AI API를 호출한 다음 점수를 다시 기록합니다. 이 방식은 동작하지만 데이터 파이프라인을 분리합니다: 일부 로직은 SQL에, 일부는 Python에 있고, 대량 재채점에는 스크립트 실행이 필요합니다.

VillageSQL과 함께: SQL에서의 감성 분석

감성 분석은 분류 작업입니다. 프롬프트가 척도를 지정하고 한 단어 결과를 요청합니다:
레이블이 붙으면 감성을 다른 열처럼 쿼리하세요:

숫자 점수 추가하기

추세 분석과 평균 계산을 위해서는 레이블 대신 1–5 점수를 요청하세요:

측면 기반 감성 분석

감성을 주제별로 — 제품 품질 대 배송 대 고객 서비스 — 나누어 보고 싶다면 구조화된 JSON 출력을 요청하세요:

정확도에 관한 참고

빠르고 저렴한 모델(Claude Haiku, GPT-4o mini)은 단순한 긍정/부정/중립 분류에 신뢰할 만합니다. 미묘한 경우 — 비꼬는 표현, 엇갈린 리뷰, 도메인 특화 언어 — 에는 더 유능한 모델이 도움이 됩니다. 정확도가 중요하다면 전체 백필을 실행하기 전에 모델 출력 샘플을 사람이 붙인 레이블과 비교해 검증하세요. 설정과 공급자 옵션은 MySQL을 AI API에 연결하기를 참조하세요.

자주 묻는 질문

텍스트 분류와 어떻게 다른가요?

감성 분석은 감정적 어조에 초점을 맞춘 특정 분류 작업입니다. AI로 MySQL에서 텍스트 분류하기는 일반적인 패턴을 다루고, 이 가이드는 감성에 특화된 프롬프트와 점수 기반 출력을 보여 줍니다.

행이 삽입될 때 감성 분석을 실행할 수 있나요?

트리거로 가능하지만, API 호출이 실행되는 동안 각 INSERT가 5–30초 걸립니다. 감성 채점은 예약된 배치 작업으로 실행하는 편이 낫습니다.

영어가 아닌 텍스트는 어떤가요?

유능한 AI 모델은 많은 언어를 잘 처리합니다. 정확도가 떨어지면 프롬프트에 예상 언어를 지정하세요: “Rate the sentiment of this French review…”

NULL 결과는 어떻게 처리하나요?

ai_prompt()는 실패 시 NULL을 반환합니다. 애플리케이션에서 속도 제한을 고려한 간격으로, NULL 행이 남지 않을 때까지 UPDATE 배치 루프를 실행하세요.

문제 해결

함께 보기