ChatGPT를 사용하여 SQL 쿼리를 작성하는 방법

SQL 쿼리 작성은 시간이 많이 걸리고 까다로울 수 있습니다. 특정 비즈니스 시나리오에 대한 솔루션을 만드는 작업을 맡은 경우 쿼리가 효율적이고 정확해야 합니다.

ChatGPT는 SQL을 포함한 방대한 기술 텍스트 세트에 대해 훈련된 AI 도구입니다. SQL 구문에 대한 질문에 답하거나, SQL 쿼리를 생성하거나, 주어진 SQL 쿼리의 출력을 설명할 수 있습니다.

SQL 쿼리 생성에 ChatGPT를 사용하면 보고서 및 데이터 흐름 설계와 같은 상위 수준 작업에 집중할 수 있습니다. 이렇게 하면 시간이 절약될 뿐만 아니라 데이터 분석의 품질과 효율성도 보장됩니다.

이 기사를 마치면 ChatGPT를 사용하여 SQL 쿼리를 작성하는 데 도움이 되는 방법을 확실하게 이해하게 될 것입니다.

목차

SQL 쿼리에 ChatGPT를 사용할 때의 이점

ChatGPT를 사용하여 SQL 쿼리를 작성하는 방법

ChatGPT는 자연어를 이해하는 강력한 AI 도구입니다. 초보자와 노련한 개발자 모두에게 유용한 도구 역할을 할 수 있습니다.

초보자는 SQL의 구문이 복잡하고 기억하기 어렵다는 것을 알 수 있습니다. ChatGPT는 자연어 요청을 SQL 쿼리로 변환하여 도움을 줄 수 있습니다. 이렇게 하면 일반 영어를 SQL로 실시간으로 변환하는 것을 볼 수 있으므로 SQL 학습이 더욱 대화식으로 진행되고 덜 어려워집니다.

숙련된 개발자는 여러 테이블 및 조건이 포함된 복잡한 SQL 쿼리를 공식화하는 데 시간이 많이 걸릴 수 있음을 알 수 있습니다. ChatGPT는 쿼리 스켈레톤을 생성하거나 자연어로 설명된 작업을 기반으로 완전한 쿼리를 생성하여 프로세스 속도를 높일 수 있습니다.

이렇게 하면 구문 오류의 가능성도 줄어듭니다. 오류에 대해 말하자면, ChatGPT는 가능한 솔루션이나 설명을 제공하여 SQL 쿼리를 디버깅하는 데 도움을 줄 수 있습니다. 또한 성능 향상을 위해 쿼리를 최적화하는 다양한 방법을 제안할 수도 있습니다.

도구에 대한 보다 일반적인 소개가 필요한 경우 다음 문서를 확인하십시오.

SQL 쿼리에 사용을 시작하려면 계속 읽으십시오.

SQL 쿼리용 ChatGPT를 시작하는 방법

아직 Open AI 계정이 없다면(무료입니다!) 다음 단계를 따르세요.

  1. 브라우저를 실행하고 https://chat.openai.com/ 으로 이동합니다 .

  2. 가입 버튼을 클릭합니다.

  3. 이메일 주소, Microsoft 계정 또는 Google 계정으로 가입합니다.

  4. 확인을 위해 전화번호를 입력하세요.

로그인하면 즉시 응답할 메시지를 보낼 수 있습니다. 귀하의 메시지는 ChatGPT 프롬프트 라고 합니다 .

이 문서에서는 SQL로 작업할 때 도구 사용에 익숙해지는 데 도움이 되는 많은 예제를 보여줍니다.

SQL 쿼리를 위한 ChatGPT 세션을 시작하는 방법

다른 데이터베이스 공급업체는 독점 구문을 사용하여 표준 SQL 코드를 확장했습니다.

예를 들어 Microsoft에는 Microsoft SQL Server 인스턴스와 상호 작용하기 위한 Transact-SQL(T-SQL로 약칭)이 있습니다. T-SQL에는 MySQL 또는 PostgreSQL과 같은 다른 유형의 SQL 데이터베이스에서 실행되지 않는 구문이 있습니다.

PostgreSQL은 SQL Server 또는 Oracle에서 실행되지 않는 추가 명령 및 구문이 있는 오픈 소스 확장입니다.

즉, 데이터베이스 시스템의 확장 기능을 사용하여 SQL 쿼리를 제공하도록 ChatGTP에 요청할 때 사용 중인 SQL 구현을 명확히 하여 채팅 세션을 시작해야 합니다.

" 저는 Microsoft SQL Server로 작업하고 있습니다." 와 같은 말로 세션을 시작할 수 있습니다 . 그리고 다음 문장에서 질문을 하십시오.

더 간단하게 하기 위해 " With SQL Server , how do I ...?"를 사용할 수 있습니다. 개념이나 용어에 대해 물을 때.

이 기사의 나머지 부분에서는 모든 주요 데이터베이스 관리 시스템에서 작동하는 표준 SQL 쿼리에 중점을 둘 것입니다.

ChatGPT에 대한 의도를 표현하는 방법

ChatGPT에 대한 의도를 명확하게 표현하는 것이 중요합니다.

ChatGPT가 작업 중인 데이터 모델을 이해할 수 있도록 테이블 구조를 설명하는 것부터 시작하세요. 열과 해당 데이터 유형뿐만 아니라 테이블의 이름과 관계를 언급하십시오. 예를 들어:

주문과 고객이라는 두 개의 테이블이 있습니다. 주문 테이블에는 id, customer_id, 제품 및 가격 열이 있습니다. 고객 테이블에는 id, name 및 email 열이 있습니다. 주문 테이블의 customer_id는 고객 테이블의 id 열을 참조하는 외래 키입니다.

다음으로 자연어( 코드 대신 인간과 유사한 텍스트 ) 를 사용하여 생성하려는 특정 쿼리를 설명합니다 .

ChatGPT가 원하는 것을 이해할 수 있도록 가능한 한 정확해야 합니다. 예를 들어:

주문 가격의 합계를 계산하여 각 고객의 총 수익을 찾는 SQL 쿼리를 작성합니다.

ChatGPT는 여러 부분으로 분류된 SQL 쿼리를 반환합니다. 다음 select 문의 예를 살펴보십시오.

ChatGPT를 사용하여 SQL 쿼리를 작성하는 방법

AI 기술은 귀하가 제공한 테이블 이름과 요청을 기반으로 SQL 쿼리를 생성했습니다.

그러나 도구는 여기서 멈추지 않습니다. 몇 가지 추가 사항을 지적합니다.

  • 대신 LEFT JOIN을 사용하려는 경우.

  • 고객 이름이 고유하지 않은 경우 NAME 대신 ID를 사용할 수 있습니다.

쿼리 결과를 기반으로 요청 공식화

ChatGPT로 더 나은 쿼리 결과를 얻으려면 복잡한 요청을 더 작은 청크로 나누어 대화 흐름을 유지할 수 있습니다.

예를 들어 도시를 기준으로 고객을 필터링하는 보다 복잡한 쿼리를 원한다고 가정합니다.

이 새로운 정보를 제공하여 채팅 세션을 계속할 수 있습니다.

id, customer_id, street, city, state 열이 있는 customer_address라는 또 다른 테이블이 있습니다. customer_id는 고객 테이블에 대한 외래 키입니다.

시카고 고객을 필터링하도록 이전 SQL 쿼리를 수정합니다.

ChatGPT는 새로운 WHERE 절이 포함된 수정된 쿼리를 반환합니다.

SQL에 익숙하지 않은 경우 지식을 쌓을 수 있는 좋은 방법입니다.

ChatGPT로 원활하게 작업할 수 있도록 요청을 간결하고 관련 컨텍스트 내에서 유지해야 합니다.

쿼리 생성을 위한 4가지 모범 사례

다음은 ChatGPT가 생성하는 SQL 코드가 올바른 솔루션인지 확인하는 몇 가지 팁입니다.

  • 모호성을 피하기 위해 테이블 ​​및 열 이름을 구체적으로 지정하십시오.

  • 모든 조건, 필터 또는 정렬 요구 사항을 명확하게 설명합니다.

  • 열 또는 집계와 같은 원하는 출력 형식을 지정합니다.

  • 필요한 경우 유사한 복합 쿼리의 예를 제공하십시오.

설명이 정확할수록 생성된 쿼리가 더 좋아집니다.

성능을 최적화하는 2가지 방법

ChatGPT를 사용하여 SQL 쿼리를 생성할 때 쿼리의 성능 측면을 고려하는 것이 중요합니다. 다음은 성능을 위해 SQL 쿼리를 최적화하는 두 가지 방법입니다.

  • 적절한 인덱스 사용

  • 지나치게 복잡한 SQL 쿼리 피하기

적절한 인덱스 사용

일부 SQL 확장에서는 쿼리가 특정 인덱스를 사용해야 한다고 지정할 수 있지만 이는 좋은 방법으로 간주되지 않습니다. 데이터베이스 스키마 또는 데이터 프로필이 시간이 지남에 따라 변경되면 쿼리가 비효율적인 인덱스를 사용하도록 강제될 수 있습니다.

그러나 쿼리에 대한 최적의 인덱스에 대한 조언을 ChatGPT에 요청할 수 있습니다. 여기에 예가 있습니다.

이 쿼리를 가장 효율적으로 만드는 하나 이상의 인덱스를 만들고 싶습니다. 도와주세요.

ChatGPT는 인덱스를 추천하고 선택 이유를 알려줍니다.

SQL 개발자가 제안된 모든 인덱스를 맹목적으로 생성하지 않는 것이 중요합니다. 실제 데이터에는 적합하지 않을 수 있습니다. 하나하나 테스트해보는 것을 추천합니다.

지나치게 복잡한 쿼리 피하기

이전 섹션에서 제안한 대로 쿼리를 작성하는 이점 중 하나는 읽고 유지하기 어려운 길고 복잡한 쿼리를 얻을 가능성이 적다는 것입니다.

ChatGPT가 따라가기 어려운 여러 하위 쿼리가 있는 쿼리를 제공하는 경우 여러 쿼리와 하나 이상의 임시 테이블을 사용하는 대체 스크립트를 제공하도록 지시할 수 있습니다.

"Chicago"에 대한 쿼리 필터링이 너무 복잡하다고 판단했다고 가정해 보겠습니다(그렇지 않습니다!). ChatGPT에 다음과 같이 지시합니다.

이전 쿼리를 임시 테이블을 사용하는 두 개의 별도 쿼리로 나누고 싶습니다. 스크립트는 동일한 결과를 달성해야 합니다.

항상 도움이 되는 ChatGPT는 귀하의 입찰을 수행하기 위해 거의 자체적으로 넘어집니다. 다음과 같이 말합니다.

물론 각 고객의 총 수익을 저장하기 위해 먼저 임시 테이블을 만든 다음 이 임시 테이블을 쿼리하여 시카고 고객을 필터링하여 동일한 결과를 얻을 수 있습니다.

이 도구는 이전 예제와 동일한 결과를 생성하는 두 개의 개별 코드 섹션을 계속 제공합니다.

ChatGPT에 데이터를 제공하는 방법

ChatGPT를 사용하여 SQL 쿼리를 작성하는 방법

쿼리 문제를 해결하려면 ChatGPT에 샘플 데이터를 제공하고 SQL을 실행하도록 요청할 수 있습니다.

이전 섹션에서는 테이블과 관계를 설명하는 방법을 설명했습니다. CREATE TABLE 문을 ChatGPT에 제공할 수도 있습니다.

다음 단계는 ChatGPT가 데이터베이스를 이해하고 결과를 해석하는 데 도움이 되도록 데이터를 요약 또는 표 형식으로 제공하는 것입니다 .

예를 들어 다음과 같은 데이터를 제공할 수 있습니다.

다음은 이러한 테이블의 데이터입니다.

고객

1, “John Smith”, “ [이메일 보호]

2, “Mary Doe”, “ [email protected]

명령

1, 1, "후디", 14.99

2, 1, "티셔츠", 5.99

3, 2, "청바지", 24.99

고객 주소

1, 1, "희망 거리", "시카고", "일리노이"

2, 2, "체리 레인", "필라델피아", "펜실베니아"

John Smith만이 시카고에 살고 있습니다. 데이터를 제공한 후 ChatGPT에 특정 쿼리의 결과를 제공하도록 요청할 수 있습니다.

세션에서 여러 변형을 시도하도록 도구에 요청한 경우 "실행"하려는 정확한 쿼리를 복사하여 붙여넣어 모호성이 없도록 하는 것이 좋습니다.

프롬프트로 다음을 입력합니다. " 이 쿼리의 결과 제공: "

ChatGPT는 쿼리를 사용하여 John Smith 주문의 총 수익을 계산합니다. 다음은 예시이며 정답입니다!

ChatGPT를 사용하여 SQL 쿼리를 작성하는 방법

ChatGPT 사용의 2가지 단점

주의해야 할 두 가지 주요 단점은 다음과 같습니다.

  • 잘못된 구문

  • 비효율적인 쿼리

잘못된 구문

때때로 ChatGPT는 컴파일되지 않거나 잘못된 결과를 생성하는 SQL을 생성합니다. 이것은 표준 SQL 에 대한 독점 확장과 함께 작동하도록 요청했을 때 더 가능성이 높습니다 .

저장 프로시저 내에서 생성된 쿼리를 래핑하는 경우 결과를 데이터 분석가 또는 비즈니스 사용자에게 전달하기 전에 쿼리를 테스트해야 합니다.

데이터에 대해 자연어 쿼리를 사용하는 보다 선별된 방법에 관심이 있는 경우 Power BI에서 Microsoft의 구현을 확인하세요.

비효율적인 쿼리

SQL 쿼리가 효율적인지 확인하려면 쿼리 실행 계획을 검토합니다.

이것은 데이터베이스 관리 시스템이 수행하는 일련의 작업입니다. 그것은 마치 기계를 열고 무엇이 달리고 있는지 보는 것과 같습니다.

ChatGPT의 문제는 데이터베이스 관리 시스템이 SQL 쿼리를 처리하는 방식을 볼 수 없다는 것입니다.

예를 들어 상태별로 고객을 먼저 필터링합니까, 아니면 해당 부분을 마지막으로 수행합니까? 그 결정은 성능에 큰 차이를 만들 수 있습니다.

쿼리가 제품 출력에 비해 느리다는 것을 알게 되면 소매를 걷어붙이고 실행 계획을 직접 검토해야 합니다.

마지막 생각들

ChatGPT를 사용하여 비즈니스에서 사용되는 일반적인 SQL 쿼리를 작성하고 수정하는 실제 사례를 보았습니다 .

AI 도구는 강력한 기반을 제공하고 SQL 쿼리 생성을 지원할 수 있지만 SQL에 대한 강력한 이해가 필요하지 않다는 점에 유의해야 합니다.

그러나 올바르게 사용하면 ChatGPT는 SQL 개발자에게 귀중한 도우미가 될 수 있습니다.



Google 슬라이드에서 Duet AI로 이미지를 만드는 방법

Google 슬라이드에서 Duet AI로 이미지를 만드는 방법

Google Slides에는 텍스트 프롬프트만 제공하여 프레젠테이션에 이미지를 추가할 수 있는 Duet AI 기능이 도입되었습니다. 사용 방법은 다음과 같습니다.

Google 검색에서 Generative AI에 미리 액세스하는 방법

Google 검색에서 Generative AI에 미리 액세스하는 방법

Google의 새로운 검색용 Generative AI 기능에 먼저 액세스하려면 Search Labs 웹사이트를 열고 로그인한 후 대기자 명단 가입을 클릭하세요.

Google에서 Generative AI 검색 결과를 비활성화하는 방법

Google에서 Generative AI 검색 결과를 비활성화하는 방법

검색에서 Google AI 결과를 비활성화하려면 Search Labs 페이지를 열고 SGE 및 코드 팁 옵션을 끄세요. 방법은 다음과 같습니다.

ChatGPT와 함께 새로운 Bing AI를 사용하는 방법

ChatGPT와 함께 새로운 Bing AI를 사용하는 방법

ChatGPT와 함께 Bing AI 사용을 시작하려면 액세스 권한을 얻은 후 Bing을 열고 검색을 수행한 후 Chat을 클릭하고 인간과 유사한 복잡한 질문을 하세요.

Windows 11에서 Google Bard를 앱으로 설치하는 방법

Windows 11에서 Google Bard를 앱으로 설치하는 방법

Google Bard를 설치하려면 Chrome > 맞춤설정 및 제어 > 추가 도구 메뉴 > 바로가기 만들기를 엽니다. Windows 11의 Edge에서 추가할 수도 있습니다.

ChatGPT를 사용하여 Bing에 조기 액세스하는 방법

ChatGPT를 사용하여 Bing에 조기 액세스하는 방법

ChatGPT AI로 Bing에 조기에 액세스하려면 Microsoft 계정으로 등록하고 이러한 설정을 변경하여 회선을 건너뛰고 더 빠르게 액세스하세요.

Bing Chat AI 검색 기록을 삭제하는 방법

Bing Chat AI 검색 기록을 삭제하는 방법

Bing Chat AI 검색 기록을 지우려면 Microsoft 계정에서 검색 기록을 열고 쿼리를 삭제하세요. 전체 질문이 저장되지 않았습니다.

Grok AI란? Grok AI를 효과적으로 사용하는 방법

Grok AI란? Grok AI를 효과적으로 사용하는 방법

Grok의 강점은 실시간 데이터를 기반으로 대응할 수 있다는 것입니다. Twitter (X)는 Crypto, Finance를위한 매우 강력한 플랫폼이므로 투자자를 기다릴 가치가 있습니다.

You.com에서는 여전히 Bing AI에 액세스할 수 없는 경우 AI 챗봇 검색을 제공합니다.

You.com에서는 여전히 Bing AI에 액세스할 수 없는 경우 AI 챗봇 검색을 제공합니다.

You.com은 Bing의 ChatGPT와 유사한 AI 챗봇인 YouChat 2.0을 출시하며 사용하기 위해 초대가 필요하지 않습니다.

Android 또는 iPhone의 SwiftKey에서 Bing Chat AI를 사용하는 방법

Android 또는 iPhone의 SwiftKey에서 Bing Chat AI를 사용하는 방법

SwiftKey에서 Bing Chat AI를 사용하려면 Android 및 iPhone에서 앱을 열고 키보드를 불러온 후 Bing을 클릭하고 검색, 톤 또는 채팅을 선택하세요.