## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
2021년부터 2022년까지 대상의 평균 영업이익을 알려줘

```json
{
  "sql_query": "SELECT AVG(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS avg_operating_profit FROM ai_dart_corp_report WHERE bsns_year IN ('2021', '2022') AND account_nm = '영업이익'"
}
```

SELECT AVG(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS '평균 영업이익' FROM ai_dart_corp_report WHERE account_nm = '영업이익' AND fs_nm = '연결재무제표' AND corp_name = '대상' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2021 AND 2022 LIMIT 20;

모델의 답변은 JSON 형식을 준수하고 있으며, SQL 쿼리문을 생성하는 데 있어서 일부 조건을 충족하고 있습니다. 그러나 몇 가지 중요한 부분이 누락되었습니다. 첫째, 'fs_nm' 조건이 포함되지 않아 '연결재무제표'만을 대상으로 하지 않았습니다. 둘째, 'corp_name' 조건이 빠져 있어 특정 기업인 '대상'을 대상으로 하지 않았습니다. 셋째, 'thstrm_nm' 조건이 빠져 있어 특정 기간을 명확히 지정하지 않았습니다. 이러한 누락으로 인해 쿼리가 정확하지 않으며, Additional Reference와 비교했을 때 완전하지 않습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
한진의 2021년부터 2023년까지 평균 매출을 구해주세요

```json
{
  "sql_query": "SELECT AVG(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS avg_revenue FROM ai_dart_corp_report WHERE corp_name = '한진' AND bsns_year BETWEEN '2021' AND '2023' AND sj_div = 'IS' AND sj_nm = '손익계산서' AND fs_div = 'OFS'"
}
```

SELECT AVG(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS '평균 매출' FROM ai_dart_corp_report WHERE corp_name = '한진' AND account_nm = '매출액' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2021 AND 2023 LIMIT 20;

모델의 답변은 JSON 형식을 준수하고 있으며, SQL 쿼리문을 생성하는 데 있어 일부 조건을 충족하고 있습니다. 그러나 몇 가지 중요한 부분이 누락되었습니다. 첫째, `account_nm`이 '매출액'이라는 조건이 빠져 있습니다. 둘째, `fs_nm`이 '연결재무제표'라는 조건이 빠져 있습니다. 셋째, `thstrm_nm`에 대한 조건이 포함되지 않았습니다. 이러한 누락으로 인해 쿼리가 정확한 결과를 반환하지 못할 가능성이 큽니다. 따라서 모델의 답변은 질문의 요구사항을 충분히 반영하지 못했습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
대한항공의 2021년부터 2023년까지 누적 영업이익울 구해주세요

```json
{
  "sql_query": "SELECT thstrm_amount AS cumulative_operating_income FROM ai_dart_corp_report WHERE corp_name = '대한항공' AND bsns_year IN ('2021', '2022', '2023') AND account_nm = '영업이익' AND fs_div = 'CFS' AND sj_div = 'IS' AND thstrm_add_amount IS NOT NULL GROUP BY thstrm_amount"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', SUM(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS '누적 영업이익' FROM ai_dart_corp_report WHERE corp_name = '대한항공' AND account_nm = '영업이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2021 AND 2023 GROUP BY bsns_year, corp_name LIMIT 20;

모델의 답변은 JSON 형식을 준수하고 있으며, SQL 쿼리문을 생성하는 데 있어 일부 조건을 충족하고 있습니다. 그러나 몇 가지 중요한 부분에서 부족함이 있습니다. 첫째, `thstrm_amount` 대신 `thstrm_add_amount`를 사용해야 누적 영업이익을 구할 수 있습니다. 둘째, `GROUP BY` 절에서 `thstrm_amount`를 그룹화하는 것은 적절하지 않습니다. 대신 `bsns_year`와 `corp_name`을 그룹화해야 합니다. 셋째, `fs_div`와 `sj_div` 조건은 적절하게 사용되었으나, `fs_nm` 조건이 누락되었습니다. 마지막으로, `LIMIT 20` 조건이 추가되지 않았습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
BYC 2017년부터 2019년까지 누적 순이익 알려줘

```json
{
  "sql_query": "SELECT thstrm_amount AS cumulative_profit FROM ai_dart_corp_report WHERE account_nm = '순이익' AND bsns_year IN ('2017', '2018', '2019') AND fs_div = 'CFS' AND thstrm_add_amount IS NOT NULL GROUP BY thstrm_amount"
}
```

SELECT SUM(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS '누적 순이익' FROM ai_dart_corp_report WHERE corp_name = 'BYC' AND account_nm = '당기순이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2017 AND 2019 LIMIT 20;

모델의 답변은 주어진 조건을 일부 충족하지 못했습니다. 우선, JSON 형식은 올바르게 사용되었으나, SQL 쿼리의 내용이 부정확합니다. "BYC"라는 회사명을 필터링하지 않았고, "당기순이익"이라는 계정명을 사용하지 않았습니다. 또한, "fs_nm" 대신 "fs_div"를 사용했으며, "thstrm_add_amount"를 조건으로 사용했지만 이는 누적 금액을 의미하지 않습니다. Additional Reference와 비교했을 때, 모델의 쿼리는 필요한 조건을 모두 충족하지 못했습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
유한양행과 SKC의 2020 ~ 2022년 영업이익을 비교해줘봐라

```json
{
  "sql_query": "SELECT corp_name, bsns_year, thstrm_amount AS operating_income FROM ai_dart_corp_report WHERE (corp_name = '유한양행' OR corp_name = 'SKC') AND sj_div = 'IS' AND sj_nm = '손익계산서' AND fs_div = 'OFS' AND bsns_year IN ('2020', '2021', '2022') AND account_nm = '영업이익' GROUP BY corp_name, bsns_year, thstrm_amount ORDER BY corp_name, bsns_year"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', thstrm_amount AS '영업이익' FROM ai_dart_corp_report WHERE corp_name IN ('유한양행', 'SKC') AND account_nm = '영업이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2020 AND 2022 LIMIT 20;

모델의 답변은 주어진 질문에 대한 SQL 쿼리를 생성하는 데 있어 몇 가지 중요한 부분에서 부족함이 있다. 첫째, 모델은 `fs_div`를 'OFS'로 설정했으나, Additional Reference에서는 '연결재무제표'를 의미하는 'CFS'를 사용하고 있다. 둘째, `sj_div`와 `sj_nm` 조건을 추가했지만, 이는 Additional Reference에 포함되지 않은 조건이다. 셋째, `bsns_year` 조건을 'IN' 구문으로 사용했으나, BETWEEN 구문이 더 적절하다. 마지막으로, `GROUP BY`와 `ORDER BY` 구문이 추가되었으나, 이는 필요하지 않다. 따라서 모델의 답변은 질문의 요구사항을 충분히 반영하지 못했다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
2020년부터 2022년까지 금양의 매출액 증가/감소 추세를 알려줘

```json
{
  "sql_query": "SELECT `thstrm_nm`, `thstrm_amount` FROM `ai_dart_corp_report` WHERE `corp_name` = '금양' AND `bsns_year` IN ('2020', '2021', '2022') AND `sj_div` = 'IS' AND `account_nm` = '매출액' ORDER BY `thstrm_nm` ASC"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) AS '매출액' FROM ai_dart_corp_report WHERE corp_name = '금양' AND account_nm = '매출액' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2020 AND 2022 ORDER BY bsns_year LIMIT 20;

모델의 답변은 질문의 요구사항을 부분적으로 충족하지만, 몇 가지 중요한 부분에서 부족함이 있다. 우선, 모델은 JSON 형식을 준수하여 답변을 제공하였으나, SQL 쿼리의 정확성에서 문제가 있다. Additional Reference와 비교했을 때, 모델의 쿼리는 `fs_nm` 조건을 포함하지 않았고, `thstrm_nm` 조건도 빠져 있다. 또한, `bsns_year` 조건을 `BETWEEN` 대신 `IN`을 사용하여 범위를 지정한 점도 다르다. 이러한 차이점들은 결과적으로 정확한 데이터를 추출하는 데 영향을 미칠 수 있다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
대웅제약의 2020 ~ 2022년까지 영업이익 증가/감소 추세를 알려주세요

```json
{
  "sql_query": "SELECT `thstrm_nm`, `thstrm_amount` FROM `ai_dart_corp_report` WHERE `stock_code` = '004210' AND `bsns_year` IN ('2020', '2021', '2022') AND `account_nm` = '영업이익' AND `fs_div` = 'CFS' AND `sj_div` = 'IS' ORDER BY `thstrm_nm` ASC"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) AS '영업이익' FROM ai_dart_corp_report WHERE corp_name = '대웅제약' AND account_nm = '영업이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2020 AND 2022 ORDER BY bsns_year LIMIT 20;

모델의 답변은 질문의 요구사항을 일부 충족하지만, 여러 중요한 부분에서 부족함이 있다. 우선, 답변은 JSON 형식으로 제공되었고, 이는 조건을 충족한다. 그러나 SQL 쿼리의 내용이 부정확하다. `stock_code`를 사용하여 '대웅제약'을 식별하려 했으나, 질문에서는 'corp_name'을 사용해야 한다. 또한, `fs_div`와 `sj_div` 조건은 적절하지만, `fs_nm`과 `sj_nm`을 사용해야 한다. 마지막으로, `thstrm_nm` 대신 `bsns_year`를 기준으로 정렬해야 한다. Additional Reference와 비교했을 때, 모델의 답변은 여러 중요한 요소를 놓쳤다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
한일시멘트의 2019~2022 순이익 증가/감소 추세 보여줘

```json
{
  "sql_query": "SELECT `thstrm_nm`, `thstrm_amount` FROM `ai_dart_corp_report` WHERE `account_nm` = '순이익' AND `fs_div` = 'CFS' AND `bsns_year` IN ('2019', '2020', '2021', '2022') AND `corp_name` = '한일시멘트' ORDER BY `thstrm_nm` ASC"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) AS '순이익' FROM ai_dart_corp_report WHERE corp_name = '한일시멘트' AND account_nm = '당기순이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2019 AND 2022 ORDER BY bsns_year LIMIT 20;

모델의 답변은 주어진 조건을 일부 충족하지 못했다. 우선, JSON 형식은 올바르게 사용되었으나, SQL 쿼리의 내용이 부정확하다. "account_nm" 필드에서 '순이익'을 사용했으나, '당기순이익'이 더 적절하다. 또한, "fs_div" 대신 "fs_nm"을 사용하여 '연결재무제표'를 명시해야 한다. "thstrm_nm" 필드의 정규 표현식 조건도 누락되었으며, "bsns_year" 조건은 BETWEEN을 사용하여 범위를 지정하는 것이 더 적절하다. 마지막으로, "ORDER BY" 절에서 "thstrm_nm" 대신 "bsns_year"를 사용하는 것이 더 적합하다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
2020년과 2022년  엔에이치엔의 유동자산을 비교해줘.

```json
{
  "sql_query": "SELECT \n    IF(`bsns_year` = '2020', '2020', '2022') AS year, \n    `thstrm_amount` AS amount \nFROM `ai_dart_corp_report` \nWHERE `bsns_year` IN ('2020', '2022') \n  AND `account_nm` = '유동자산' \n  AND `corp_name` = '엔에이치엔'"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', thstrm_amount AS '유동자산' FROM ai_dart_corp_report WHERE corp_name = '엔에이치엔' AND account_nm = '유동자산' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year IN (2020, 2022) LIMIT 20;

모델의 답변은 주어진 조건을 일부 충족하지만, 몇 가지 중요한 부분에서 부족합니다. 우선, 답변은 JSON 형식을 따르고 있으며, 이는 조건 1과 2를 충족합니다. 그러나 SQL 쿼리의 내용이 부정확합니다. Additional Reference에 따르면, `fs_nm` 필드에서 '연결재무제표'를 필터링해야 하며, `thstrm_nm` 필드에서 특정 패턴을 만족하는 값을 필터링해야 합니다. 모델의 쿼리에는 이러한 조건이 누락되어 있습니다. 또한, `LIMIT 20` 조건도 포함되지 않았습니다. 따라서 SQL 쿼리가 완전하지 않으며, 질문의 요구사항을 충분히 반영하지 못했습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
롯데이노베이트의 2018년 매출을 알려주세요

```json
{
  "sql_query": "SELECT thstrm_amount FROM ai_dart_corp_report WHERE corp_name = '롯데이노베이트' AND bsns_year = '2018' AND sj_div = 'IS' AND sj_nm = '손익계산서' AND thstrm_nm = '매출'"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', thstrm_amount AS '매출액' FROM ai_dart_corp_report WHERE corp_name = '롯데이노베이트' AND account_nm = '매출액' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year = 2018 LIMIT 20;

모델의 답변은 JSON 형식을 준수하고 있으며, SQL 쿼리를 생성하는 데 있어 일부 조건을 반영하고 있다. 그러나 몇 가지 중요한 부분이 누락되었다. 첫째, `account_nm`이 '매출액'으로 지정되지 않았고, `fs_nm`이 '연결재무제표'로 지정되지 않았다. 둘째, `thstrm_nm` 조건이 '매출'로 잘못 설정되었으며, 이는 '제 [0-9]+ 기'와 같은 정규 표현식으로 설정되어야 한다. 마지막으로, `LIMIT 20` 조건이 누락되었다. 이러한 누락으로 인해 쿼리가 정확하지 않다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
신성이엔지의 2020, 2021년 자산총계 비교해줘

```json
{
  "sql_query": "SELECT thstrm_dt, thstrm_amount FROM ai_dart_corp_report WHERE corp_name = '신성이엔지' AND bsns_year IN ('2020', '2021') AND account_nm = '자산총계' AND fs_div = 'OFS' AND sj_div = 'BS' AND fs_nm = '재무상태표' AND sj_nm = '재무상태표' ORDER BY bsns_year, thstrm_dt;"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', thstrm_amount AS '자산총계' FROM ai_dart_corp_report WHERE corp_name = '신성이엔지' AND account_nm = '자산총계' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year IN (2020, 2021) LIMIT 20;

모델의 답변은 질문의 요구사항을 부분적으로 충족하지만, 몇 가지 중요한 부분에서 부족함이 있다. 우선, 모델은 JSON 형식을 준수하여 답변을 제공하였으나, SQL 쿼리의 조건이 Additional Reference와 다르다. Additional Reference에서는 '연결재무제표'를 사용하고 '제 [0-9]+ 기' 형식의 당기명을 필터링하는 조건이 포함되어 있다. 반면, 모델의 답변에서는 '재무상태표'를 사용하고 있으며, '제 [0-9]+ 기' 형식의 필터링 조건이 빠져 있다. 또한, fs_div와 sj_div 조건이 다르다. 이러한 차이점들은 결과적으로 질문의 요구사항을 완전히 충족하지 못하게 한다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
최근 5년의 빙그레 부채비율을 말해보세요

```json
{
  "sql_query": "SELECT bsns_year, thstrm_amount AS 부채금액, (SELECT thstrm_amount FROM ai_dart_corp_report WHERE account_nm = '자본금' AND bsns_year = rcept_no.bsns_year AND fs_div = 'CFS') AS 자본금액, CAST(부채금액 AS DECIMAL) / CAST(자본금액 AS DECIMAL) * 100 AS 부채비율 FROM ai_dart_corp_report rcept_no WHERE account_nm = '부채총계' AND fs_div = 'CFS' AND bsns_year >= DATE_FORMAT(CURDATE(), '%Y') - 5 AND bsns_year < DATE_FORMAT(CURDATE(), '%Y') GROUP BY bsns_year ORDER BY bsns_year DESC LIMIT 5;"
}
```

이 SQL 쿼리는 빙그레의 최근 5년 동안의 빙그레 부채비율을 계산합니다. 부채비율은 각 사업연도의 부채총계를 자본금으로 나눈 값입니다. 이 쿼리는 `부채총계` 계정명과 `자본금` 계정명의 금액을 가져와서 부채비율을 계산합니다.

SELECT bsns_year AS '연도', corp_name AS '회사명', ROUND((SUM(CASE WHEN account_nm = '부채총계' THEN CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) ELSE 0 END) / SUM(CASE WHEN account_nm = '자본총계' THEN CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) ELSE 0 END)) * 100, 1) AS '부채비율' FROM ai_dart_corp_report WHERE corp_name = '빙그레' AND account_nm IN ('부채총계', '자본총계') AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN YEAR(NOW()) - 4 AND YEAR(NOW()) GROUP BY bsns_year, corp_name LIMIT 20;

모델의 답변은 언어 요구사항을 충족하며, JSON 형식을 준수하고 있습니다. 그러나 SQL 쿼리의 정확성에 문제가 있습니다. 첫째, `부채금액`과 `자본금액`을 계산하는 서브쿼리에서 `rcept_no` 테이블 별칭을 사용하고 있지만, 이는 정의되지 않았습니다. 둘째, `bsns_year` 조건이 잘못되었습니다. `DATE_FORMAT(CURDATE(), '%Y') - 5`는 최근 5년을 정확히 반영하지 않습니다. 셋째, `account_nm`이 '자본금'이 아닌 '자본총계'여야 합니다. 마지막으로, `fs_nm` 조건이 누락되었습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
에어부산의 3년간 영업이익률

```json
{
  "sql_query": "SELECT corp_name, bsns_year, (CAST(thstrm_amount AS DECIMAL) / CASE WHEN frmtrm_amount = 'NULL' THEN 1 ELSE CAST(frmtrm_amount AS DECIMAL) END) * 100 AS营业利润率 FROM ai_dart_corp_report WHERE account_nm = '영업이익' AND fs_div = 'CFS' AND corp_name = '에어부산' AND bsns_year IN ('2019', '2020', '2021') GROUP BY corp_name, bsns_year, thstrm_amount, frmtrm_amount"
}
```

이 SQL 쿼리는 에어부산의 2019년, 2020년, 2021년 3년간의 영업이익률을 계산합니다. 영업이익률은 영업이익을 전기금액으로 나눈 값의 100배로 계산됩니다. 이 쿼리는 `account_nm`이 '영업이익'이고 `fs_div`가 'CFS'이며, `corp_name`이 '에어부산'인 데이터만 필터링합니다.

SELECT bsns_year AS '연도', corp_name AS '회사명', ROUND((SUM(CASE WHEN account_nm = '영업이익' THEN CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) ELSE 0 END) / SUM(CASE WHEN account_nm = '매출액' THEN CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) ELSE 0 END)) * 100, 1) AS '영업이익률' FROM ai_dart_corp_report WHERE corp_name = '에어부산' AND account_nm IN ('영업이익', '매출액') AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN YEAR(NOW()) - 2 AND YEAR(NOW()) GROUP BY bsns_year, corp_name LIMIT 20;

모델의 답변은 언어 요구사항을 준수하여 한국어로 작성되었으나, SQL 쿼리의 정확성에 문제가 있다. 주어진 조건에 따르면 영업이익률은 영업이익을 매출액으로 나눈 값이어야 한다. 그러나 모델의 쿼리는 영업이익을 전기금액으로 나누고 있다. 또한, `bsns_year` 조건이 2019, 2020, 2021로 고정되어 있어, 현재 연도를 기준으로 3년간의 데이터를 가져오는 조건을 만족하지 않는다. 추가적으로, `fs_nm` 조건이 '연결재무제표'로 설정되어야 하는데, 모델은 `fs_div`를 'CFS'로 설정하였다. 따라서 모델의 답변은 질문의 요구사항을 충분히 반영하지 못했다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
2019년부터 2022년까지 위니아의 매출 성장률 알려줘

```json
{
  "sql_query": "SELECT (CAST(thstrm_amount AS DECIMAL(18,2)) - CAST(frmtrm_amount AS DECIMAL(18,2))) / CAST(frmtrm_amount AS DECIMAL(18,2)) * 100 AS growth_rate, thstrm_dt FROM ai_dart_corp_report WHERE corp_name = '위니아' AND bsns_year BETWEEN '2019' AND '2022' AND sj_div = 'IS' AND sj_nm = '손익계산서' AND fs_div = 'OFS' AND thstrm_amount != '0' AND frmtrm_amount != '0' GROUP BY thstrm_dt ORDER BY thstrm_dt;"
}
```

WITH yearly_revenue AS (SELECT bsns_year AS '연도', corp_name AS '회사명', CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED) AS '매출액' FROM ai_dart_corp_report WHERE corp_name = '위니아' AND account_nm = '매출액' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2019 AND 2022) SELECT (POWER((SELECT 매출액 FROM yearly_revenue WHERE 연도 = 2022) / (SELECT 매출액 FROM yearly_revenue WHERE 연도 = 2019), 1.0 / 3) - 1) * 100 AS '연평균 성장률(CAGR)' FROM dual LIMIT 20;

모델의 답변은 질문의 요구사항을 충분히 반영하지 못했습니다. 질문은 2019년부터 2022년까지 위니아의 매출 성장률을 묻고 있으며, Additional Reference는 이를 계산하기 위한 SQL 쿼리를 제공합니다. 그러나 모델의 답변은 매출 성장률을 계산하는 대신, 특정 기간 동안의 매출액 변화를 계산하는 쿼리를 제공하고 있습니다. 또한, 모델의 쿼리는 연결재무제표(CFS)를 사용하지 않고 개별재무제표(OFS)를 사용하고 있으며, 매출액 계정(account_nm = '매출액')을 명시하지 않았습니다. 따라서 모델의 답변은 질문의 조건을 충족하지 못하고 있습니다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
신일전자 최근 5년의 순이익이 얼만가요 ?

```json
{
  "sql_query": "SELECT thstrm_amount FROM ai_dart_corp_report WHERE corp_name = '신일전자' AND sj_div = 'IS' AND sj_nm = '손익계산서' AND thstrm_dt >= DATE_SUB(CURDATE(), INTERVAL 5 YEAR) AND thstrm_amount != '' ORDER BY thstrm_dt DESC LIMIT 5"
}
```

SELECT bsns_year AS '연도', corp_name AS '회사명', thstrm_amount AS '당기순이익' FROM ai_dart_corp_report WHERE corp_name = '신일전자' AND account_nm = '당기순이익' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN YEAR(NOW()) - 4 AND YEAR(NOW()) LIMIT 20;

모델의 답변은 질문의 요구사항을 부분적으로 충족하지만, 몇 가지 중요한 부분에서 부족함이 있다. 우선, 모델은 JSON 형식을 준수하여 답변을 제공하였다. 그러나 SQL 쿼리의 조건이 부정확하다. 질문은 최근 5년의 순이익을 묻고 있으며, Additional Reference에 따르면 '당기순이익' 계정명을 사용해야 한다. 모델의 쿼리에서는 'sj_div'와 'sj_nm'을 사용하여 손익계산서를 필터링하고 있지만, 'account_nm'을 '당기순이익'으로 필터링하지 않았다. 또한, 'fs_nm'을 '연결재무제표'로 필터링하지 않았고, 'thstrm_nm'의 형식도 고려하지 않았다. 따라서 모델의 쿼리는 정확한 결과를 반환하지 못할 가능성이 높다.


## DB 스키마 :
-- 기업 재무제표 테이블
CREATE TABLE `ai_dart_corp_report` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `stock_code` varchar(6) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '상장회사의 종목코드',
  `rcept_no` varchar(14) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '접수번호',
  `bsns_year` varchar(4) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '사업연도',
  `account_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '계정명',
  `fs_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결구분 OFS:재무제표, CFS:연결재무제표',
  `fs_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '개별/연결명',
  `sj_div` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표구분 BS:재무상태표, IS:손익계산서',
  `sj_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '재무제표명',
  `thstrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기명',
  `thstrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기일자',
  `thstrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '당기금액',
  `thstrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '당기누적금액',
  `frmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기명',
  `frmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기일자',
  `frmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기금액',
  `frmtrm_add_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전기누적금액',
  `bfefrmtrm_nm` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기명',
  `bfefrmtrm_dt` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기일자',
  `bfefrmtrm_amount` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '전전기금액',
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '통화 단위',
  `insert_dtm` datetime(6) DEFAULT NULL COMMENT 'DB 생성일자',
  `corp_name` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '정식회사명칭',
  PRIMARY KEY (`id`),
  UNIQUE KEY `UK8ftec913csvmrepmkvqsuhv8q` (`stock_code`,`bsns_year`,`rcept_no`,`account_nm`,`fs_div`),
  KEY `idx_corp_report_info` (`corp_name`(100),`account_nm`(50),`fs_nm`(50),`thstrm_nm`(50),`bsns_year`),
  KEY `idx_account_nm` (`account_nm`)
) ENGINE=InnoDB AUTO_INCREMENT=779813 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

## 조건 :
1. 답변은 반드시 JSON 형식으로 구성됩니다.
2. JSON 형식은 {"sql_query": "..."} 입니다.
3. "sql_query"의 기본값은 빈 스트링("")이며, SQL 쿼리를 생성할 수 있는 경우 SQL 쿼리문을 입력합니다.
4. 사용자 질문은 DB 데이터를 모르는 상태이기 때문에 적절치 않은 질문이 들어 올 수 있습니다. 이 부분은 반드시 고려하여 SQL 문을 생성합니다.

## 질문 :
2021년부터 2023년까지 아모레퍼시픽의 누적 매출액을 구해주세요

```json
{
  "sql_query": "SELECT thstrm_amount AS cumulative_revenue FROM ai_dart_corp_report WHERE corp_name = '아모레퍼시픽' AND bsns_year IN ('2021', '2022', '2023') AND fs_div = 'CFS' AND sj_div = 'IS' AND thstrm_add_amount IS NOT NULL GROUP BY thstrm_amount"
}
```

SELECT SUM(CAST(REPLACE(thstrm_amount, ',', '') AS SIGNED)) AS '누적 매출액' FROM ai_dart_corp_report WHERE corp_name = '아모레퍼시픽' AND account_nm = '매출액' AND fs_nm = '연결재무제표' AND thstrm_nm REGEXP '^제 [0-9]+ 기$' AND bsns_year BETWEEN 2021 AND 2023 LIMIT 20;

모델의 답변은 질문의 요구사항을 충분히 반영하지 못했습니다. 우선, JSON 형식은 잘 준수했으나, SQL 쿼리의 내용이 부적절합니다. 질문에서는 2021년부터 2023년까지 아모레퍼시픽의 누적 매출액을 구하는 것이었으나, 모델의 쿼리는 누적 매출액을 구하는 데 필요한 SUM 함수와 REPLACE 함수가 빠져 있습니다. 또한, fs_div와 sj_div 조건은 적절하게 사용되었으나, thstrm_add_amount를 그룹화하는 것은 누적 매출액을 구하는 데 적절하지 않습니다. Additional Reference와 비교했을 때, 모델의 쿼리는 정확하지 않습니다.