Cara Menggunakan ChatGPT Untuk Menulis Pertanyaan SQL

Menulis pertanyaan SQL boleh memakan masa dan mencabar. Jika anda ditugaskan untuk mencipta penyelesaian untuk senario perniagaan tertentu, anda perlu memastikan bahawa pertanyaan anda adalah cekap dan tepat.

ChatGPT ialah alat AI yang telah dilatih pada set besar teks teknikal termasuk SQL. Ia boleh menjawab soalan tentang sintaks SQL, menjana pertanyaan SQL atau menerangkan output pertanyaan SQL yang diberikan.

Dengan menggunakan ChatGPT untuk penjanaan pertanyaan SQL, anda boleh menumpukan pada tugas peringkat lebih tinggi seperti mereka bentuk laporan dan aliran data. Ini bukan sahaja menjimatkan masa anda, tetapi ia juga memastikan kualiti dan keberkesanan analisis data anda.

Pada penghujung artikel ini, anda akan mempunyai pemahaman yang kukuh tentang cara menggunakan ChatGPT untuk membantu anda menulis pertanyaan SQL.

Isi kandungan

Kelebihan Menggunakan ChatGPT Untuk Pertanyaan SQL

Cara Menggunakan ChatGPT Untuk Menulis Pertanyaan SQL

ChatGPT ialah alat AI berkuasa yang memahami bahasa semula jadi. Ia boleh berfungsi sebagai alat yang berharga untuk pemula dan pembangun berpengalaman.

Pemula boleh mendapati sintaks SQL adalah kompleks dan mencabar untuk diingati. ChatGPT boleh membantu dengan menukar permintaan bahasa semula jadi kepada pertanyaan SQL. Ini menjadikan pembelajaran SQL lebih interaktif dan kurang menakutkan, kerana anda boleh melihat terjemahan bahasa Inggeris biasa ke dalam SQL dalam masa nyata.

Pembangun yang berpengalaman boleh mendapati bahawa merumuskan pertanyaan SQL kompleks yang melibatkan berbilang jadual dan syarat boleh memakan masa. ChatGPT boleh mempercepatkan proses dengan menjana rangka pertanyaan atau pertanyaan lengkap berdasarkan tugas yang diterangkan dalam bahasa semula jadi.

Ini juga mengurangkan kemungkinan ralat sintaks. Bercakap tentang ralat, ChatGPT juga boleh membantu menyahpepijat pertanyaan SQL dengan menyediakan penyelesaian atau penjelasan yang mungkin. Ia juga boleh mencadangkan cara yang berbeza untuk mengoptimumkan pertanyaan untuk prestasi yang lebih baik.

Jika anda mahukan pengenalan yang lebih umum kepada alat tersebut, lihat artikel ini:

Jika anda ingin mula menggunakannya untuk pertanyaan SQL, baca terus.

Cara Bermula Dengan ChatGPT Untuk Pertanyaan SQL

Jika anda belum mempunyai akaun Open AI (percuma!), ikut langkah ini.

  1. Lancarkan penyemak imbas dan pergi ke https://chat.openai.com/ .

  2. Klik butang daftar.

  3. Daftar dengan alamat e-mel, akaun Microsoft atau akaun Google.

  4. Berikan nombor telefon untuk pengesahan.

Apabila anda log masuk, anda boleh mula menghantar mesej untuk dijawab dengan segera. Mesej anda dikenali sebagai gesaan ChatGPT .

Artikel ini menunjukkan kepada anda banyak contoh untuk membiasakan anda menggunakan alat semasa anda bekerja dengan SQL.

Cara Memulakan Sesi ChatGPT Anda Untuk Pertanyaan SQL

Vendor pangkalan data yang berbeza telah melanjutkan kod SQL standard dengan sintaks proprietari.

Contohnya, Microsoft mempunyai Transact-SQL (disingkat T-SQL) untuk berinteraksi dengan contoh Microsoft SQL Server. T-SQL mempunyai sintaks yang tidak akan dijalankan pada jenis pangkalan data SQL yang lain, seperti MySQL atau PostgreSQL.

PostgreSQL ialah sambungan sumber terbuka yang mempunyai arahan dan sintaks tambahan yang tidak akan dijalankan pada SQL Server atau Oracle.

Ini bermakna apabila anda meminta ChatGTP untuk menyediakan pertanyaan SQL menggunakan ciri lanjutan sistem pangkalan data, anda harus memulakan sesi Sembang anda dengan menjelaskan dengan jelas pelaksanaan SQL yang anda gunakan.

Anda boleh memulakan sesi anda dengan pernyataan seperti " Saya sedang bekerja dengan Microsoft SQL Server." dan tanya soalan anda dalam ayat seterusnya.

Untuk menjadikannya lebih mudah, anda boleh menggunakan " Dengan SQL Server , bagaimana saya ...?" apabila bertanya tentang konsep atau istilah.

Untuk seluruh artikel ini, saya akan menumpukan pada pertanyaan SQL standard yang berfungsi pada semua sistem pengurusan pangkalan data utama.

Bagaimana Mengungkapkan Niat Anda untuk ChatGPT

Adalah penting untuk menyatakan dengan jelas niat anda kepada ChatGPT.

Mulakan dengan menerangkan struktur jadual anda supaya ChatGPT mempunyai pemahaman tentang model data yang anda gunakan. Sebutkan nama dan hubungan jadual, serta lajur dan jenis datanya. Sebagai contoh:

Saya mempunyai dua meja: pesanan dan pelanggan. Jadual pesanan mempunyai id lajur, id_pelanggan, produk dan harga. Jadual pelanggan mempunyai id lajur, nama dan e-mel. Customer_id dalam jadual pesanan ialah kunci asing yang merujuk kepada lajur id dalam jadual pelanggan.

Seterusnya, terangkan pertanyaan khusus yang ingin anda hasilkan menggunakan bahasa semula jadi ( teks seperti manusia dan bukannya kod ).

Setepat mungkin untuk membantu ChatGPT memahami perkara yang anda cari. Sebagai contoh:

Tulis pertanyaan SQL yang mencari jumlah hasil setiap pelanggan dengan mengira jumlah harga pesanan mereka.

ChatGPT mengembalikan pertanyaan SQL dengan pecahan bahagian yang berbeza. Lihat contoh berikut bagi pernyataan pilihan:

Cara Menggunakan ChatGPT Untuk Menulis Pertanyaan SQL

Teknologi AI telah menghasilkan pertanyaan SQL berdasarkan nama jadual dan permintaan yang anda berikan.

Tetapi alat itu tidak berhenti di situ sahaja. Ia menunjukkan beberapa perkara tambahan:

  • Apabila anda mahu menggunakan LEFT JOIN sebaliknya.

  • Anda mungkin mahu menggunakan ID dan bukannya NAMA jika nama pelanggan tidak unik.

Merumus Permintaan Berdasarkan Keputusan Pertanyaan

Untuk mencapai hasil pertanyaan yang lebih baik dengan ChatGPT, anda boleh memecahkan permintaan yang kompleks kepada bahagian yang lebih kecil untuk mengekalkan aliran perbualan.

Sebagai contoh, katakan anda mahukan pertanyaan yang lebih kompleks yang menapis pelanggan berdasarkan bandar mereka.

Anda boleh meneruskan sesi sembang dengan memberikan maklumat baharu ini.

Saya mempunyai jadual lain yang dipanggil alamat_pelanggan dengan id lajur, id_pelanggan, jalan, bandar, negeri. Customer_id ialah kunci asing kepada jadual pelanggan.

Pinda pertanyaan SQL sebelumnya untuk menapis pelanggan dari Chicago.

ChatGPT mengembalikan pertanyaan yang dipinda dengan klausa WHERE baharu.

Jika anda tidak berpengalaman dengan SQL, ini adalah cara terbaik untuk membina pengetahuan anda.

Ingatlah untuk memastikan permintaan anda ringkas dan dalam konteks yang berkaitan untuk memastikan pengalaman lancar bekerja dengan ChatGPT.

4 Amalan Terbaik Untuk Penjanaan Pertanyaan

Berikut ialah beberapa petua untuk memastikan bahawa Kod SQL ChatGPT yang dihasilkan adalah penyelesaian yang betul:

  • Jadi khusus dengan nama jadual dan lajur untuk mengelakkan kekaburan.

  • Nyatakan dengan jelas sebarang syarat, penapis atau keperluan pengisihan.

  • Tentukan format output yang diingini, seperti lajur atau pengagregatan.

  • Jika perlu, berikan contoh pertanyaan kompleks yang serupa.

Lebih tepat anda dalam penerangan anda, lebih baik pertanyaan yang dihasilkan.

2 Cara Mengoptimumkan Prestasi

Apabila menggunakan ChatGPT untuk menjana pertanyaan SQL, adalah penting untuk mempertimbangkan aspek prestasi pertanyaan. Berikut ialah dua cara untuk mengoptimumkan pertanyaan SQL untuk prestasi:

  • gunakan indeks yang sesuai

  • mengelakkan pertanyaan SQL yang terlalu kompleks

Gunakan Indeks yang Sesuai

Ada kemungkinan dalam beberapa sambungan SQL untuk menentukan bahawa pertanyaan harus menggunakan indeks tertentu, namun ini tidak dianggap sebagai amalan yang baik. Jika skema pangkalan data atau profil data berubah dari semasa ke semasa, anda boleh berakhir dengan pertanyaan yang terpaksa menggunakan indeks yang tidak cekap.

Walau bagaimanapun, anda boleh meminta ChatGPT untuk mendapatkan nasihat tentang indeks optimum untuk pertanyaan anda. Berikut adalah contoh.

Saya ingin mencipta satu atau lebih indeks yang menjadikan pertanyaan ini paling cekap. Sila bantu.

ChatGPT akan mengesyorkan indeks dan memberikan sebab di sebalik pilihan.

Adalah penting bahawa pembangun SQL tidak membuat semua indeks yang dicadangkan secara membuta tuli. Mereka mungkin tidak sesuai untuk data sebenar. Saya nasihatkan anda mencuba dan menguji setiap satu.

Elakkan Pertanyaan Terlalu Kompleks

Salah satu kelebihan membina pertanyaan anda seperti yang kami cadangkan dalam bahagian sebelumnya ialah anda kurang berkemungkinan mendapat pertanyaan kompleks yang panjang yang sukar dibaca dan dikekalkan.

Jika ChatGPT memberi anda pertanyaan dengan berbilang subkueri yang sukar diikuti, anda boleh memberitahunya untuk menyediakan skrip alternatif yang menggunakan berbilang pertanyaan dan satu atau lebih jadual sementara.

Katakan saya memutuskan bahawa penapisan pertanyaan pada "Chicago" adalah terlalu rumit (bukan!). Saya akan mengarahkan ChatGPT seperti ini:

Saya ingin memecahkan pertanyaan sebelumnya kepada dua pertanyaan berasingan yang menggunakan jadual sementara. Skrip mesti mencapai hasil yang sama.

ChatGPT yang sentiasa membantu hampir gagal untuk melakukan pembidaan anda. Ia berkata:

Sudah tentu, kami boleh mencapai hasil yang sama dengan membuat jadual sementara dahulu untuk menyimpan jumlah hasil bagi setiap pelanggan, dan kemudian menanyakan jadual sementara ini untuk menapis pelanggan dari Chicago.

Alat ini diteruskan dengan menyediakan dua bahagian kod berasingan yang menghasilkan hasil yang sama seperti contoh sebelumnya.

Cara Membentangkan Data ke ChatGPT

Cara Menggunakan ChatGPT Untuk Menulis Pertanyaan SQL

Apabila anda ingin menyelesaikan masalah pertanyaan anda, anda boleh memberikan data sampel kepada ChatGPT dan memintanya menjalankan SQL.

Bahagian terdahulu menunjukkan kepada anda cara menerangkan jadual dan perhubungan. Anda juga boleh memberikan kenyataan CREATE TABLE kepada ChatGPT.

Langkah seterusnya ialah menyediakan data dalam format ringkasan atau jadual untuk membantu ChatGPT memahami pangkalan data anda dan mentafsir keputusan.

Sebagai contoh, anda boleh memberikan data seperti ini:

Berikut ialah data dalam jadual ini.

Pelanggan

1, “John Smith”, “ [email protected]

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

Pesanan

1, 1, “Hoodie”, 14.99

2, 1, “T-Shirt”, 5.99

3, 2, “Jeans”, 24.99

Alamat_Pelanggan

1, 1, “Jalan Harapan”, “Chicago”, “Illinois”

2, 2, “Cherry Lane”, “Philadelphia”, “Pennsylvania”

Ambil perhatian bahawa hanya John Smith yang tinggal di Chicago. Setelah memberikan data, anda boleh meminta ChatGPT untuk memberikan hasil pertanyaan khusus.

Jika anda telah meminta alat untuk mencuba beberapa variasi dalam sesi, saya nasihatkan anda menyalin dan menampal pertanyaan tepat yang anda mahu ia "dijalankan" supaya tiada kesamaran.

Masukkan ini sebagai gesaan: " Berikan hasil pertanyaan ini: "

ChatGPT akan menggunakan pertanyaan untuk mengira jumlah hasil pesanan John Smith. Berikut adalah contoh, dan ini adalah jawapan yang betul!

Cara Menggunakan ChatGPT Untuk Menulis Pertanyaan SQL

2 Keburukan Menggunakan ChatGPT

Dua kelemahan utama yang perlu diperhatikan ialah:

  • sintaks yang salah

  • pertanyaan yang tidak cekap

Sintaks yang salah

Kadangkala ChatGPT akan menjana SQL yang tidak menyusun atau menghasilkan hasil yang salah. Ini lebih berkemungkinan apabila anda telah memintanya untuk berfungsi dengan sambungan proprietari kepada SQL standard .

Jika anda membungkus pertanyaan yang dijana dalam prosedur tersimpan, pastikan anda mengujinya sebelum anda menyampaikan keputusan kepada penganalisis data atau pengguna perniagaan.

Jika anda berminat dengan cara yang lebih dipilih susun untuk menggunakan pertanyaan bahasa semula jadi untuk data anda, lihat pelaksanaan Microsoft dalam Power BI:

Pertanyaan Tidak Cekap

Apabila anda ingin memastikan bahawa pertanyaan SQL anda cekap, anda menyemak pelan pelaksanaan pertanyaan.

Ini adalah urutan operasi yang dilakukan oleh sistem pengurusan pangkalan data. Ia agak seperti membuka mesin dan melihat bahagian yang sedang berjalan.

Masalah dengan ChatGPT ialah ia tidak dapat melihat bagaimana sistem pengurusan pangkalan data anda memproses pertanyaan SQL anda.

Sebagai contoh, adakah ia menapis pelanggan mengikut negeri dahulu atau melaksanakan bahagian itu yang terakhir? Keputusan itu boleh membuat perbezaan besar kepada prestasi.

Jika anda memerhatikan bahawa pertanyaan anda lambat kepada output produk, anda perlu menyingsing lengan baju anda dan memeriksa sendiri pelan pelaksanaan.

Fikiran Akhir

Anda telah melihat contoh kehidupan sebenar menggunakan ChatGPT untuk menulis dan meminda pertanyaan SQL biasa yang digunakan dalam perniagaan.

Adalah penting untuk ambil perhatian bahawa walaupun alat AI boleh menyediakan asas yang kukuh dan membantu dengan menjana pertanyaan SQL, ia tidak menggantikan keperluan untuk pemahaman yang mantap tentang SQL.

Walau bagaimanapun, apabila digunakan dengan betul, ChatGPT boleh menjadi pembantu yang tidak ternilai kepada pembangun SQL.