Pengaturcaraan

SQL – Panduan Pantas Untuk Pemula

30 Oktober 2021

SQL membayangkan Bahasa Pertanyaan Berstruktur. Ia adalah bahasa khusus domain yang digunakan untuk mendapatkan semula data yang disimpan dalam pangkalan data. SQL mengendalikan data yang disimpan dalam sistem pengurusan pangkalan data hubungan (RDBMS), iaitu, data yang melibatkan hubungan antara entiti dan pembolehubah. Bahasa pertanyaan berstruktur serasi dengan semua major sistem operasi .

Terdahulu, manipulasi data dilakukan menggunakan ISAM (Kaedah Capaian Urutan Berindeks) dan VSAM (Kaedah Akses Storan Maya) . Bahasa pertanyaan berstruktur mempunyai lebih banyak faedah daripada ISAM dan VSM. Menggunakan satu arahan tunggal dalam SQL, anda boleh mendapatkan berbilang rekod atau data. Kelebihan lain ialah ia tidak memerlukan untuk menentukan cara mencapai data.

Isi kandungan

Apakah SQL?

SQL ialah bahasa untuk mencipta, memanipulasi dan mengekalkan pangkalan data. Ia juga membantu untuk memasukkan data, memadamkannya atau mengubah suainya. Bahasa ini terdiri daripada berbilang subbahasa, seperti bahasa definisi data (DDL) , bahasa manipulasi data (DML) , bahasa pertanyaan data (DQL) , dan bahasa kawalan data (DCL) .

SQL terdiri daripada pertanyaan data, definisi data, manipulasi data dan kawalan capaian data. Pertanyaan data ialah arahan yang digunakan untuk mendapatkan semula sebarang data daripada pangkalan data. Definisi data melibatkan penentuan skema pangkalan data, dan manipulasi data termasuk memasukkan, mengemas kini dan memadam data.

Pada tahun 1986, SQL menjadi Institut Piawaian Kebangsaan Amerika (ANSI) standard. Pada tahun berikutnya, ia menjadi Pertubuhan Antarabangsa untuk Standardisasi (ISO) standard. Pada tahun 1970, Donald D. Chamberlin dan Raymond F. Boyce membangunkan SQL di IBM.

Terdahulu, ia dikenali sebagai SEQUEL (Bahasa Pertanyaan Bahasa Inggeris Berstruktur). Ia direka khas untuk menyimpan dan mendapatkan semula data IBM. Terdapat versi SQL berbeza yang dikeluarkan pada tahun 1989, 1992, 1996, 1999, 2003, 2006, 2008, 2011 dan 2016.

SQL ialah bahasa teras untuk semua sistem pengurusan pangkalan data hubungan, seperti MySQL, Oracle, Sybase, SQL Server, MS Access, Postgres dan Informix. Menggunakan dialek pertanyaan ini mempunyai pelbagai faedah. SQL membolehkan pengguna mengakses maklumat daripada mana-mana sistem pengurusan pangkalan data hubungan.

Pengguna boleh mentakrifkan data, mengubah suainya atau memadam data menggunakan SQL. Anda juga boleh membenamkan dialek ini dalam mana-mana bahasa pengaturcaraan lain, di mana pengambilan data diperlukan. Ia membenarkan pengguna menjana dan menetapkan kebenaran pada prosedur, fungsi dan pandangan yang disimpan.

Kini kita tahu tentang SQL dan sejarahnya. Sekarang mari kita fokus pada sistem pengurusan pangkalan data hubungan (RDBMS). PL/SQL, Sambungan Bahasa Prosedur kepada SQL , membantu memanjangkan SQL dan menyediakannya keupayaan prosedur

Pangkalan Data RDBMS

Kami telah melihat bahawa SQL digunakan oleh banyak pangkalan data RDBMS, seperti MySQL, SQL Server, Oracle, MS Access, dll. Oleh itu, dalam bahagian ini, kita akan mempelajari beberapa pangkalan data RDBMS. Kami akan melihat ciri setiap pangkalan data, dan kemudian kami boleh mengakui perbezaan antara mereka.

satu. MySQL:

Sebuah syarikat Sweden, MySQL AB, membangunkan MySQL pangkalan data, yang percuma untuk digunakan dan sumber terbuka. MySQL serasi dengan semua sistem utama, seperti Microsoft Windows, Linux , Unix dan sistem pengendalian macOS. Anda boleh menggunakan versi komersial atau bukan komersialnya. Mengikut versi, anda dibekalkan dengan ciri-ciri. Ia menggabungkan pelayan pangkalan data yang kukuh, lebih pantas, berbilang benang dan berbilang pengguna.

Pada tahun 1994, Micheal Widenius dan David Axmark membangunkan MySQL dan disebut dalam konteks ‘my ess-que-ell.’ Pada 23 Mei 1995, keluaran pertama pangkalan data MySQL telah dilancarkan. Pangkalan data ini serasi untuk dijalankan dengan sistem Windows pada 8 Januari 1998. Ia pertama kali dikeluarkan untuk Windows 95 dan NT.

The MySQL versi 3.23: beta dikeluarkan antara Jun 2000 hingga Januari 2001. Versi seterusnya, 4.0: beta, dilancarkan antara Ogos 2002 hingga Mac 2003. Dari Jun 2004 hingga Oktober 2004, versi 4.1: beta telah dikeluarkan. Versi berikut, 5.1: beta, telah dihasilkan dari Mac 2005 hingga Oktober 2005. Kemudian pada tahun 2008, MySQL telah diperoleh oleh Sun Microsystems, dan kemudian versi terkini 5.2: beta telah dilancarkan.

Ciri-ciri:

MySQL menawarkan prestasi tinggi, ketersediaan tinggi dan fleksibiliti untuk menjalankan apa sahaja. Ia juga menyokong transaksi yang berkuasa untuk dijalankan. Semua data dalam pangkalan data MySQL dilindungi dan sangat terjamin. Ia tersedia secara percuma dan sumber terbuka.

dua. Oracle:

Oracle adalah salah satu pangkalan data hubungan yang digunakan secara meluas yang mempunyai sistem pengurusan berbilang pengguna dan besar. Oracle Corporation melancarkan pangkalan data hubungan oracle. DBMS ini paling sesuai untuk operasi klien/pelayan. Beberapa pelanggan boleh mengakses dan menghantar data melalui rangkaian. Oracle serasi dengan sistem klien dan pelayan, seperti UNIX, UnixWare, OS/2, NetWare dan MSDOS.

Larry Ellison, Ed Oates, dan Bob Miner membangunkan pangkalan data Oracle pada tahun 1977 dan menubuhkan Makmal Pembangunan Perisian. Pada tahun 1979, versi Oracle 2.0 dikeluarkan dalam dua tahun akan datang, versi Oracle komersial pertama. Mereka menukar nama Software Development Laboratories kepada Relational Software Inc. (RSI). Organisasi ini kemudiannya dinamakan Oracle Corporation pada tahun 1982. Versi seterusnya, 3.0, telah dilancarkan pada tahun 1983 dalam bahasa C. Oracle versi 4.0, dibangunkan pada tahun 1984, termasuk ciri yang lebih maju, seperti konsistensi bacaan berbilang versi, kawalan serentak, dll. Oracle 11g, versi terkini, telah dilancarkan pada tahun 2007.

Pangkalan data hubungan Oracle melibatkan ciri yang lebih maju, seperti concurrency, mekanisme penguncian, SQL Plus, pengurus sumber, perlombongan data, pembahagian, pergudangan data, pelaksanaan selari, dll.

3. MS SQL Server:

Pangkalan data hubungan daripada Microsoft ialah Pelayan MS SQL . Objektif utama pangkalan data ini adalah untuk menyimpan dan mendapatkan semula data dalam pangkalan data. Ia serasi dengan Microsoft Windows, Linux dan Pelayan Windows sistem operasi. MS SQL Server membenarkan mana-mana aplikasi perisian, yang terdapat pada komputer yang sama atau yang berbeza atau merentasi rangkaian, untuk mendapatkan semula data. Ia menggunakan bahasa pangkalan data ANSI SQL dan T-SQL.

Pada mulanya, pada tahun 1987, SQL Server telah dibangunkan untuk sistem UNIX oleh Sybase. Pada tahun berikutnya, Microsoft, Aston-Tate dan Sybase mengeluarkan SQL Server 1.0 untuk OS/2. Untuk pengguna Windows 3.0, versi 1.1 SQL Server telah dilancarkan pada tahun 1990. Kemudian, Aston-Tate meninggalkan organisasi, dan Micorosft mengeluarkan SQL Server 2000 pada tahun 2000. Pada tahun berikutnya, XML untuk pangkalan data ini telah dibangunkan. SQLXML 2.0 dibangunkan pada tahun 2002 dan kemudiannya mengeluarkan SQLXML 3.0. Versi terkini, SQL Server 2005, telah dibangunkan pada 7 November 2005.

MS SQL Server menampilkan pencerminan pangkalan data, pencetus DDL, penyepaduan XML yang lancar, mel pangkalan data, prestasi tinggi dan ketersediaan tinggi.

Empat. MS Access:

Satu lagi pangkalan data hubungan yang popular ialah MS Access. Seperti pangkalan data di atas, MS Access juga adalah produk Microsoft. DBMS ini digunakan untuk perniagaan berskala kecil dan sangat murah. Ia menggabungkan enjin pangkalan data Jet. Enjin ini juga dipanggil Jet SQL, kerana ia menggunakan bahasa SQL.

Pada tahun 1992, MS Access versi 1.0 yang pertama telah dibangunkan. Pada tahun berikutnya, ia telah berkembang dengan bahasa pengaturcaraan Asas Akses untuk meningkatkan keserasian. Kemudian, Access 2007 telah dilancarkan, yang menggunakan format ACCDB. Versi MS Access ini lanjutan dan termasuk jenis data yang kompleks dan medan berbilang nilai.

MS Access menggunakan makro untuk jadual, borang, laporan dan pertanyaan yang disambungkan. Menggunakan sistem ini, anda boleh mengeksport dan mengimport data anda ke dalam beberapa format, seperti ASCII, Oracle, ODBC, SQL Server, dll. Format Jet memegang aplikasi dan datanya bersama-sama dalam satu fail. Oleh itu, berkongsi mana-mana aplikasi adalah mudah. Ia tidak menyokong pencetus pangkalan data, prosedur tersimpan dan pengelogan transaksi, kerana ia adalah sistem berasaskan pelayan fail.

Apakah itu RDBMS?

Hampir semua sistem pangkalan data semasa, seperti SQL, Oracle, MySQL, Microsoft Access, dll., menggunakan sistem pengurusan pangkalan data hubungan. Sistem pangkalan data ini adalah berdasarkan model hubungan. E. F. Codd mencadangkan sistem pengurusan pangkalan data hubungan. Terdapat elemen tertentu dalam RDBMS yang perlu anda ketahui sebelum kita bergerak ke arah SQL. Mari kita bincangkan setiap aspek di bawah.

satu. Jadual:

Dalam RDBMS, data disimpan dalam bentuk jadual. Jadual ini dirujuk sebagai objek. Ia juga dipanggil a perhubungan . Jadual dalam RDBMS mempunyai baris dan lajur. Setiap jadual dalam RDBMS mempunyai nama jadual tertentu. Jadual dianggap sebagai bentuk simpanan data yang paling mudah.

Mari kita pertimbangkan jadual yang mempunyai nama jadual, ‘Pelajar.’ Kami akan menyimpan maklumat pelajar dalam jadual Pelajar, seperti Nama, Umur, ID_Pelajar dan Bandar.

namaumurID pelajarBandar
Steve231092New York
Oliver241093Para Malaikat
Robertdua puluh satu1094Chicago
Mary251095California
Jennifer231096New York
James221097Washington DC
Johndua puluh satu1098California
johnny241099Chicago

Jadual di atas menyediakan maklumat tentang pelajar.

dua. Medan:

Elemen RDBMS seterusnya ialah medan. Medan ialah entiti jadual yang lebih kecil. Contohnya, dalam jadual di atas, 'Pelajar', Nama, Umur, ID_Pelajar dan Bandar ialah medan. Oleh itu, setiap lajur dalam jadual adalah medan, yang menyimpan maklumat atau rekod tertentu.

3. baris:

Satu baris juga dirujuk sebagai rekod. Rekod atau baris mengandungi maklumat tentang entiti tertentu. Dalam jadual di atas, 'Pelajar,' terdapat lapan baris atau rekod yang berbeza. Dalam istilah lain, jadual di atas memegang data lapan pelajar yang berbeza. Entiti mendatar tunggal ialah baris atau rekod. Berikut ialah baris atau rekod daripada jadual 'Pelajar.'

|_+_|

Empat. Ruangan:

Kami telah melihat bahawa baris adalah entiti mendatar. Tidak seperti baris, lajur ialah entiti menegak. Lajur menyimpan semua data yang berkaitan dengan medan. Dalam jadual 'Pelajar', Nama, Umur, ID_Pelajar dan Bandar adalah medan. Oleh itu, lajur dengan medan 'Nama' mengandungi nama pelajar. Lajur ini diwakili seperti berikut:

|_+_|

5. NULL:

Apabila tiada data dalam medan tertentu atau mempunyai ruang kosong dalam medan, nilai tersebut ialah nilai NULL. Nilai NULL tidak sama dengan sifar. Ia disimpan kosong semasa mencipta rekod.

Asas SQL

Kami akan mempelajari semua asas SQL dalam segmen ini, seperti sintaks, pemprosesan pertanyaan, kekangan, arahan dan penormalan pangkalan data.

Sintaks SQL

Pertanyaan SQL mengandungi beberapa elemen untuk mendapatkan semula data daripada pangkalan data. Di bawah ialah komponen yang terlibat dalam pertanyaan.

    Fasal:

Klausa ialah bahagian pilihan pertanyaan. Mereka adalah elemen pertanyaan. Sebagai contoh, KEMASKINI, SET, DI MANA, dsb., adalah klausa.

    Ungkapan:

Ungkapan dalam pertanyaan menghasilkan data dalam bentuk jadual yang mempunyai baris dan lajur. Satu baris dipanggil 'tuple' dan lajur dirujuk sebagai 'atribut.'

    Predikat:

Predikat ialah keadaan, yang menghasilkan logik tiga nilai (Benar/ Salah/ Tidak Diketahui).

    pertanyaan:

Pertanyaan mengambil data yang diperlukan daripada pangkalan data menggunakan syarat.

    Kenyataan:

Penyata mengawal aliran program, urus niaga, sambungan, dsb. Ia juga mungkin melibatkan koma bertitik ';.'

    Ruang putih yang tidak penting:

Ruang putih yang tidak diingini tidak dipertimbangkan dalam pertanyaan SQL, menjadikannya lebih mudah difahami dan boleh dibaca.

Di sini kita akan melihat contoh kecil menggunakan tiga klausa, kemas kini, set, dan tempat.

  1. KEMASKINI umur;

Pertanyaan di atas mengemas kini atribut umur.

  1. SET umur = umur+2;

Perkara di atas melibatkan ungkapan 'umur+2,' yang meningkatkan umur sebanyak dua, dan hasilnya ditetapkan kepada umur.

  1. WHERE emp_name = 'John';

Di sini, 'emp_name = 'John' ialah predikat, dan 'John' ialah ungkapan.

Pemprosesan Pertanyaan

Pertanyaan dalam SQL diproses untuk menukarnya kepada ungkapan peringkat rendah, yang boleh difahami oleh komputer. Sebarang pemprosesan pertanyaan termasuk beberapa komponen, seperti penghurai, penterjemah, enjin evolusi, pangkalan data, dll. Pertanyaan peringkat tinggi diubah menjadi ungkapan yang serasi dengan tahap fizikal sistem fail. Di bawah ialah gambar rajah yang menggambarkan cara pertanyaan diproses dan dioptimumkan untuk melaksanakannya pada peringkat fizikal.

img 617dd1be21877

Pertama, pertanyaan peringkat tinggi ditukar kepada ungkapan yang boleh difahami, iaitu, ungkapan algebra. Semasa penukaran ini, pertanyaan melalui beberapa fasa, seperti yang ditunjukkan dalam rajah di atas. Pada peringkat pertama, penghurai menyemak sintaks pertanyaan dan memerhati sama ada hubungan dan atribut yang terlibat adalah betul. Penterjemah mengubah pertanyaan menjadi perwakilan dalaman, yang diberikan kepada pengoptimum.

Pengoptimum pertanyaan menukar perwakilan dalaman pertanyaan kepada ungkapan, yang boleh dilaksanakan. Ungkapan ini kemudiannya dilaksanakan oleh enjin DBMS atau enjin penilaian pertanyaan. Hasil enjin DBMS diberikan kepada tahap fizikal pangkalan data.

Klausa SQL

Klausa dalam SQL ialah komponen pertanyaan. Terdapat beberapa klausa dalam SQL. Mari kita lihat setiap klausa secara terperinci dengan sintaks di bawah.

    Fasal PILIH:

Apabila anda ingin mendapatkan semula data daripada lajur atau baris yang ditentukan, anda boleh menggunakan klausa SELECT. Ia juga boleh mendapatkan semula data daripada baris berbilang jadual atau paparan. Set keputusan bagi pernyataan pilih juga merupakan jadual.

Sintaks:

|_+_|
    Klausa DISTINCT:

Klausa DISTINCT digunakan dengan klausa SELECT. Ia mengembalikan nilai yang unik dan berbeza. Tiada nilai pendua hadir dalam set hasil.

Sintaks:

|_+_|
    Klausa MANA:

Klausa Where digunakan untuk menentukan syarat untuk mendapatkan semula data. Ia memaparkan satu-satunya baris yang ditentukan oleh syarat.

Sintaks:

|_+_|
    KUMPULAN MENGIKUT Klausa:

Klausa ini mengumpulkan baris yang mempunyai nilai yang serupa ke dalam satu set hasil. Klausa GROUP BY sentiasa digunakan dalam pertanyaan dengan fungsi seperti SUM, MAX, MIN, COUNT dan AVG.

Sintaks:

|_+_|
    PERINTAH OLEH:

Apabila terdapat keperluan untuk mengisih hasil ke dalam susunan menaik atau menurun, anda boleh menggunakan pernyataan ORDER BY. Secara lalai, pernyataan ini mengisih hasil dalam tertib menaik. Jika anda ingin menyusun set hasil dalam susunan menurun, anda boleh menentukan 'desc' dalam pertanyaan.

Sintaks:

|_+_|
    MEMPUNYAI:

Objektif utama kata kunci HAVING ialah ia digunakan dengan hanya fungsi agregat, seperti SUM, MIN, MAX, COUNT dan AVG. Kata kunci WHERE tidak serasi dengan fungsi agregat.

Sintaks:

|_+_|

Perintah dalam SQL

Perintah SQL dikategorikan kepada lima jenis berbeza, DDL, DML, DQL, TCL dan DCL. Kami akan mengetahui setiap tiga jenis ini secara terperinci di bawah.

    DDL:

Bahasa definisi data terdiri daripada empat arahan SQL, cipta, ubah, potong dan lepas. Arahan ini digunakan untuk menukar struktur jadual. Kesemuanya adalah auto-komit, iaitu, perubahan yang dibuat dalam struktur jadual disimpan secara kekal.

Kenyataan buat jadual digunakan untuk mencipta jadual baharu, paparan jadual atau sebarang objek lain dalam pangkalan data.

Sintaks:

|_+_|

Contoh:

|_+_|

Perintah lain, alter, digunakan untuk mengubah suai atau membuat perubahan dalam paparan atau jadual sedia ada. Menggunakan perintah alter, anda boleh menambah lajur baharu pada jadual atau menukar lajur sedia ada bagi jadual tertentu.

Sintaks:

|_+_|

Contoh:

|_+_|

Perintah DDL truncate memadam semua baris daripada jadual. Ambil perhatian bahawa ia tidak memadamkan jadual.

Sintaks:

|_+_|

Contoh:

|_+_|

Akhir sekali, arahan drop memadamkan jadual atau paparan. Ia memadam sepenuhnya struktur jadual dan data yang disimpan dalam jadual.

Sintaks:

|_+_|

Contoh:

|_+_|
    DML:

Bahasa manipulasi data terdiri daripada tiga arahan, masukkan, padam dan kemas kini. Perintah ini mengubah suai data jadual. Tidak seperti arahan DDL, arahan DML tidak dikomit secara automatik. Apabila anda menggunakan mana-mana daripada tiga arahan, anda perlu menggunakan kata kunci 'commit' untuk menyimpan perubahan secara kekal.

Perintah INSERT memasukkan data ke dalam jadual. Apabila mana-mana data baharu ditambahkan pada jadual, bilangan tupel akan meningkat.

Sintaks:

|_+_|

Ataupun

|_+_|

Contoh:

|_+_|

Seterusnya ialah kenyataan kemas kini. Pernyataan ini mengemas kini atau mengubah suai nilai sedia ada bagi satu atribut.

Sintaks:

|_+_|

Contoh:

|_+_|

Akhir sekali, kenyataan padam memadamkan baris tertentu daripada jadual.

Sintaks:

|_+_|

Contoh:

|_+_|
    DCL:

Dalam SQL, kami memberikan beberapa pihak berkuasa atau hak kepada orang untuk memanipulasi, mengakses atau memadam data daripada pangkalan data. Kami boleh memberikan dan mengambil semula pihak berkuasa menggunakan arahan GRANT dan REVOKE.

Penyata GRANT digunakan untuk memberikan hak untuk mengakses pangkalan data. Pengguna boleh mengakses pangkalan data jika mereka diberi kebenaran.

Sintaks:

|_+_|

Kenyataan REVOKE adalah bertentangan dengan kenyataan GRANT. Ia menghilangkan semua keistimewaan daripada pengguna untuk mengakses pangkalan data .

|_+_|
    DQL:

Terdapat hanya satu arahan dalam bahasa pertanyaan data, SELECT. Perintah ini digunakan untuk memilih atribut tertentu daripada jadual. Ia memilih atribut bergantung pada keadaan WHERE yang ditentukan.

Sintaks:

|_+_|

Contoh:

|_+_|
    TCL:

Bahasa kawalan transaksi melibatkan tiga arahan, komit, rollback dan savepoint. Anda boleh menggunakan pernyataan TCL hanya dengan arahan DML. Ia tidak boleh digunakan dengan pernyataan DDL, kerana ia secara automatik menyimpan perubahan secara kekal dalam pangkalan data.

Pernyataan komit menyimpan semua perubahan yang dibuat secara kekal pada jadual dalam pangkalan data.

Sintaks:

|_+_|

Contoh:

|_+_|

Apabila anda ingin membuat asal sebarang urus niaga terdahulu yang tidak dilakukan dalam pangkalan data, penyata rollback boleh dilaksanakan.

Sintaks:

|_+_|

Contoh:

|_+_|

Akhir sekali, penyata SAVEPOINT menjalankan pemulangan urus niaga yang cekap. Ia melancarkan urus niaga tertentu ke titik yang dikehendaki, tidak memerlukan keseluruhan urus niaga untuk melancarkan semula.

Sintaks:

|_+_|

Integriti Data

Integriti Data dalam pangkalan data membayangkan ketepatan dan on-redundansi. Data yang terdapat dalam pangkalan data hendaklah tepat dan tidak berulang. Untuk tujuan ini, kami menggunakan kekangan. Secara amnya, kekangan bermaksud had atau sekatan. Dalam SQL, kekangan membayangkan peraturan atau peraturan pada lajur jadual. Dalam erti kata lain, kekangan menentukan data yang perlu ditambah pada jadual. Menggunakan kekangan pada lajur data memastikan kebolehpercayaan dan ketepatan data.

SQL

Gambar rajah di atas menggambarkan kekangan berbeza yang dikumpulkan kepada tiga kategori, Integriti Entiti, Integriti rujukan dan integriti domain.

Anda boleh menggunakan kekangan pada lajur jadual atau terus ke jadual. Jika anda lebih suka menggunakan kekangan pada lajur, ia dirujuk sebagai kekangan peringkat lajur. Anda boleh menggunakan kekangan peringkat lajur pada satu atau dua lajur. Dan menggunakan kekangan kepada keseluruhan jadual dipanggil kekangan peringkat jadual. Apabila anda menggunakan kekangan peringkat jadual, ia akan digunakan pada semua lajur jadual.

Beritahu kami sekarang semua tiga kategori integriti data di atas.

    Integriti Entiti:

Dalam integriti entiti, setiap tuple jadual dikenal pasti secara unik menggunakan tiga kekangan di bawah:

  • NOT NULL Constraint: Ia memastikan bahawa tiada nilai NULL dalam jadual atau lajur.
  • Kekangan UNIK: Peraturan ini menentukan bahawa lajur dalam jadual akan mempunyai nilai unik. Tiada nilai dalam lajur akan diulang.
  • Kunci PRIMER: Apabila anda menggunakan kekangan ini pada mana-mana lajur jadual, lajur itu akan mengenal pasti secara unik setiap baris atau tupel dalam jadual.
    Integriti Rujukan:

Apabila anda ingin mengaitkan dua jadual berbeza dalam pangkalan data, anda boleh menggunakan integriti rujukan.

  • Kunci ASING: Ia akan mengenal pasti secara unik baris atau tuple jadual lain. Kunci utama satu jadual harus hadir sebagai atribut dalam jadual lain. Atribut sedemikian dirujuk sebagai Kunci ASING.
    Integriti Domain:

Integriti domain digunakan untuk memastikan semua nilai dalam jadual mengikut peraturan yang ditetapkan.

  • Kekangan DEFAULT: Ia memberikan nilai lalai kepada lajur apabila nilai khusus tidak dinyatakan.
  • CHECK Kekangan: Apabila anda ingin mengesahkan bahawa semua nilai lajur memenuhi syarat yang ditentukan, anda boleh menggunakan kekangan CHECK.

INDEX: Apabila anda ingin mengambil atau mencipta data pangkalan data, anda boleh menggunakan INDEX.

Normalisasi Pangkalan Data

Normalisasi pangkalan data ialah proses menyusun data dalam pangkalan data dalam format yang tersusun dengan baik. Terdapat bentuk normal yang berbeza dalam normalisasi pangkalan data , yang membantu menghapuskan lebihan dan meningkatkan integriti data. E. F. Codd mencadangkan konsep normalisasi pangkalan data. Terdapat dua sebab utama untuk normalisasi pangkalan data.

  • Mengalih keluar data berulang daripada pangkalan data.
  • Memastikan semua kebergantungan data adalah betul dan masuk akal.

Mengalih keluar data berlebihan akan membantu dalam mengosongkan ruang cakera. Menggunakan normalisasi pangkalan data, anda boleh mencipta pangkalan data yang baik dan menyimpan data di dalamnya secara logik. Terdapat bentuk normal yang berbeza dalam normalisasi pangkalan data, yang membantu anda mencipta pangkalan data yang tersusun dengan baik. Bentuk biasa ini diberikan di bawah:

  • Bentuk Biasa Pertama
  • Bentuk Biasa Kedua
  • Bentuk Biasa Ketiga
  • Boyce Codd Bentuk Biasa
  • Bentuk Biasa Keempat
  • Bentuk Biasa Kelima

Jenis Data SQL

Jenis data SQL mentakrifkan jenis data yang digunakan. Terdapat enam jenis jenis data dalam SQL: angka, tarikh dan masa, aksara dan rentetan, aksara Unicode, binari dan pelbagai. Jenis data ini digunakan semasa membuat jadual dalam pangkalan data. Setiap lajur diperuntukkan kepada jenis data dan harus mengandungi data jenis yang ditentukan sahaja.

Setiap pangkalan data hubungan tidak menyokong semua jenis data SQL. Pangkalan data hubungan Oracle tidak menyokong jenis data DATETIME, dan pangkalan data MySQL tidak menyokong jenis data CLOB. Terdapat beberapa pangkalan data khusus, yang mempunyai jenis data berasingan tambahan. Dalam Microsoft SQL Server, jenis data lain ialah ‘wang’ dan ‘wang kecil.’ Mari kita bincangkan setiap jenis data di bawah.

satu. Jenis Data Berangka

Terdapat sebelas jenis data berangka yang berbeza dalam SQL, yang dikategorikan kepada dua kumpulan. Kumpulan pertama mengandungi jenis data angka tepat, dan kumpulan kedua mempunyai anggaran jenis data angka. Jenis data angka yang tepat termasuk bigint, int, smallint, tinyint, perpuluhan, wang, angka, smallmoney dan bit. Dan anggaran jenis data angka melibatkan apungan dan nyata. Jadual di bawah akan menggambarkan nilai julat jenis data tepat dan anggaran.

Jenis Data Tepat

Jenis data daripada Kepada Penyimpanan
sedikit0satu
bigint-9,223,372,036,854,775,8089,223,372,036,854,775,8078 bait
tinyint02551 bait
wang kecil-214,748.3648+214.748.36474 bait
wang-922,337,203,685,477.5808+922,337,203,685,477.58078 bait
smallint-32,76832,7672 bait
int-2,147,483,6482,147,483,6474 bait
angka-10^38 +110^38-15 – 17 bait
perpuluhan-10^38 +110^38-15 – 17 bait

Jenis Data Anggaran

Jenis data daripada Kepada Penyimpanan
sebenar-3.40E + 383.40E + 384 atau 8 bait
terapung-1.79E + 3081.79E + 3084 bait

dua. Tarikh dan masa

Jenis data tarikh dan masa mempunyai empat jenis data yang berbeza, tarikh, tarikh, masa dan smalldatetime. Beritahu kami sekarang nilai julat setiap jenis data tarikh dan masa.

Jenis data daripada Kepada Penyimpanan
smalldatetime1 Jan 19006 Jun 20794 bait
masa tarikh1 Jan 175331 Dis 99998 bait
datetime21 Jan 000131 Dis 99996 – 8 bait
TarikhJenis data ini menyimpan tarikh dalam bentuk 30 Jun 1991.3 bait
masaJenis data ini menyimpan masa dalam bentuk 12:30 P.M.3 – 5 bait

3. Watak dan Rentetan

Jenis data aksara dan Rentetan digunakan untuk memasukkan abjad dan perkataan. Terdapat empat jenis data Aksara dan Rentetan yang berbeza seperti berikut:

    char

Jenis data char adalah panjang tetap dan mempunyai had saiz maksimum 8,000 aksara.

    varchar

Jenis data ini adalah panjang berubah-ubah, mempunyai had saiz maksimum 8,000 aksara.

    teks

Jenis data teks mempunyai panjang berubah-ubah, dan had saiz maksimum ialah sehingga 2,147,483,647 aksara.

    varchar(maks)

Jenis data ini juga panjang berubah-ubah, mempunyai had saiz maksimum 2E + 31.

Semua jenis data di atas adalah bukan Unicode.

Empat. binari:

Terdapat empat jenis data binari dalam SQL: binari, varbinary, varbinary(maks), dan imej. Di bawah ialah penerangan ringkas bagi setiap jenis data ini.

    binari

Jenis data ini mempunyai panjang tetap, mempunyai had panjang maksimum 8,000 bait.

    varbinary

varbinary ialah satu lagi jenis data binari, yang mempunyai panjang berubah-ubah. Ia mempunyai had saiz maksimum 8,000 bait.

    varbinary(maks)

Seperti varbinary, varbinary(maks) juga merupakan jenis data panjang ubah, yang mempunyai had saiz maksimum 2E + 31 bait. Ia hanya digunakan dalam SQL Server 2005.

    gambar

imej juga merupakan data binari pembolehubah panjang dengan had maksimum 2,147,483,647 bait.

5. Jenis Data Unikod

Kumpulan ini juga mempunyai empat jenis data yang berbeza: nchar, nvarchar, nvarchar(maks), dan ntext.

    nchar

nchar ialah jenis data Unicode dengan panjang tetap, mempunyai panjang maksimum 4,000 bait.

    nvarchar

Tidak seperti nchar, nvarchar ialah Unicode panjang boleh ubah dengan had saiz maksimum 4,000 bait.

    nvarchar(maks)

nvarchar(max) hanya serasi dengan pangkalan data SQL Server 2005. Ia mempunyai had saiz maksimum 2E + 31 dan mempunyai panjang berubah-ubah.

    nteks

ntext ialah Unicode panjang boleh ubah dengan panjang maksimum 1,073,741,823 bait.

6. Macam-macam

Berikut ialah jenis data yang termasuk dalam kumpulan pelbagai.

    sql_variant: Ia memegang nilai semua jenis data yang disokong oleh pangkalan data SQL Server, kecuali cap waktu, teks dan nteks.pengecam unik: Jenis data ini memegang GUID, pengecam unik di peringkat global.kursor: Ia merujuk kepada objek kursor.cap masa: Ia adalah nombor unik yang akan ditukar apabila mana-mana baris dalam pangkalan data diubah suai.xml: Ia disokong oleh SQL Server 2005 dan menyimpan data xml.meja: Ia mengandungi set hasil, yang digunakan untuk tujuan masa hadapan.

Pengendali SQL

Operator ialah perkataan atau aksara yang dikhaskan. Mereka bertujuan untuk melaksanakan operasi tertentu. Biasanya, pengendali digunakan dalam klausa WHERE untuk menentukan syarat. Operator boleh menjadi aritmetik, logik atau perbandingan. Anda juga boleh menggunakan operator untuk menggabungkan dua syarat dalam pernyataan yang sama. Dalam SQL, terdapat tiga jenis operator yang berbeza, aritmetik, perbandingan dan operator logik.

satu. Operator Aritmetik

Pengendali aritmetik boleh melakukan operasi aritmetik, seperti penambahan, penolakan, pendaraban, modulus dan pembahagian. Mari kita ambil 'a, mempunyai nilai 15' sebagai satu pembolehubah dan 'b, mempunyai nilai 30' sebagai pembolehubah lain. Kita akan melihat contoh setiap operator aritmetik di bawah.

Operator Penerangan Contoh
+Operator '+' melakukan penambahan dua pembolehubah.a+b=15+30=45
Operator ‘-’ menolak pembolehubah kanan daripada pembolehubah kiri.a-b =15-30=-15
%'%' menghasilkan baki hasil apabila pembolehubah kiri dibahagikan dengan pembolehubah kanan.b/a=30%15=0
/‘/’ melakukan pembahagian. Nilai pembolehubah kiri dibahagikan dengan nilai pembolehubah kanan.b/a =30/15=2
*‘*’ mendarab dua pembolehubah.a*b=15*30=450

dua. Operator Logik

Di sini, kita akan melihat semua operator logik yang digunakan dalam SQL dengan penerangan ringkas mereka.

  • DAN: DAN digunakan untuk menggabungkan beberapa syarat dalam satu pernyataan SQL.
  • ANTARA: Operator ini digunakan untuk menentukan julat nilai. Anda boleh menetapkan nilai minimum dan maksimum menggunakan kata kunci ANTARA.
  • IN: Apabila anda menggunakan kata kunci IN, ia membandingkan satu nilai dengan semua nilai literal lain yang terdapat dalam senarai tertentu.
  • NOT: Operator ini digunakan dengan operator logik lain, seperti EXISTS, BETWEEN. Sebagai contoh, anda boleh memohon NOT EXISTS, NOT ANTARA, NOT IN, dsb.
  • IS NULL: Apabila anda ingin membandingkan sebarang nilai dengan nilai NULL, anda boleh menggunakan IS NULL.
  • SEMUA: Operator ini digunakan untuk membandingkan nilai dalam satu set dengan semua nilai lain dalam set lain.
  • APA-APA: Ia membandingkan nilai dengan mana-mana nilai praktikal dalam senarai.
  • WUJUD: Ia menyemak sama ada baris tertentu terdapat dalam jadual.
  • SUKA: Apabila anda ingin membandingkan nilai dengan nilai yang serupa, gunakan kata kunci SUKA.
  • ATAU: Suka DAN, ATAU juga menggabungkan beberapa syarat dalam klausa WHERE.
  • UNIK: Kata kunci ini mengesahkan keunikan setiap baris dalam jadual.

3. Operator Perbandingan

Untuk mengiktiraf pengendali perbandingan, kami akan mengambil dua pembolehubah, a dan b. Biarkan 'a' menjadi 15 'b' menjadi 20.

Operator Penerangan Contoh
Ia menyemak sama ada nilai kedua-dua pembolehubah adalah sama atau tidak. Jika mereka tidak sama, ia kembali benar, jika tidak benar.(ab) =(1530)=benar
==Seperti , == juga menyemak dua pembolehubah untuk nilai yang sama. Jika nilai adalah sama, ia kembali benar.(a==b)=(15==30)=tidak benar
!=‘!=’ adalah serupa dengan ‘.’ Ia juga menghasilkan benar jika nilai kedua-dua pembolehubah adalah tidak sama.(ab) =(1530)=benar
>Jika nilai pembolehubah kiri lebih besar daripada pembolehubah kanan, ‘>’ mengembalikan benar.(a>b)=(15>30)= tidak benar
!>‘!>’ adalah bertentangan dengan operator ‘>’. Ia kembali benar jika nilai pembolehubah kiri tidak lebih besar daripada nilai pembolehubah kanan.(a!>b)=(15!>30)= benar
>=Jika operan kiri lebih besar daripada atau sama dengan operan kanan, keadaan menjadi benar.(a=30)= tidak benar
<Jika nilai pembolehubah kiri kurang daripada nilai pembolehubah kanan, ‘<’ returns true. (kepada
!<'!<’ is opposite to the ‘<’ operator. It returns true if the left variable value is not less than the right variable value. (kepada
<=Jika operan kiri kurang daripada atau sama dengan operan kanan, keadaan menjadi benar.(kepada<=b)=(15<=30)= true

Ungkapan SQL

Dalam SQL, ungkapan terdiri daripada operator, satu atau lebih nilai dan fungsi SQL. Mereka sentiasa dinyatakan dalam klausa WHERE. Di bawah ialah sintaks yang menggambarkan penggunaan ungkapan dalam pertanyaan pangkalan data.

Sintaks:

|_+_|

Terdapat tiga jenis ungkapan yang digunakan dalam SQL, boolean, angka dan tarikh.

satu. Ungkapan Boolean

Ungkapan boolean mendapatkan semula data yang sepadan dengan satu nilai. Ia mendapatkan semula baris yang sepadan dengan nilai yang dinyatakan dalam EXPRESSION.

Sintaks:

|_+_|

Terdahulu, kami telah mencipta jadual, mempunyai nama jadual, ‘Pelajar.’ Kami akan mendapatkan semula datanya menggunakan pernyataan SELECT.

|_+_|

Pengeluaran:

|_+_|

Sekarang, kami akan mengambil data yang sepadan dengan nilai Student_ID = 1098. Hanya satu baris akan dipaparkan seperti berikut.

|_+_|

Keputusan:

|_+_|

dua. Ungkapan Berangka

Ungkapan angka ialah operasi matematik. Ia dinyatakan seperti berikut:

Sintaks:

|_+_|

Anda boleh melakukan sebarang operasi matematik menggunakan ungkapan angka. Berikut ialah satu contoh yang menggambarkan operasi matematik menggunakan ungkapan angka.

|_+_|

Pengeluaran:

|_+_|

Anda juga boleh memasukkan fungsi agregat dalam ungkapan angka: avg(), max(), count(), min(), dan sum(). Sekarang, kita akan mengira bilangan rekod atau baris dalam jadual 'Pelajar'.

|_+_|

Pengeluaran:

|_+_|

3. Ungkapan Tarikh

Ungkapan tarikh ialah ungkapan yang paling diingini dalam SQL, yang menyediakan tarikh dan masa semasa sistem. Mari kita lihat pertanyaan untuk memaparkan tarikh dan masa semasa sistem.

|_+_|

Pengeluaran:

|_+_|

Cipta, Gugurkan dan GUNAKAN pernyataan Pangkalan Data dalam SQL

satu. Cipta Pangkalan Data

Sebelum kita membuat jadual, kita perlu membuat pangkalan data terlebih dahulu. Pertama, cipta pangkalan data di mana anda ingin bekerja. Sekarang kita akan melihat bagaimana untuk mencipta pangkalan data.

Sintaks:

|_+_|

Anda mesti memastikan bahawa nama pangkalan data harus unik dan berbeza. Ia tidak boleh digunakan sebelum ini.

Sekarang mari kita cipta pangkalan data yang mempunyai nama .

|_+_|

Untuk mencipta sebarang pangkalan data, anda mesti mempunyai keistimewaan pentadbir. Anda boleh melihat semua pangkalan data yang dibuat dengan menggunakan arahan 'SHOW DATABASES'. Kami telah mencipta berbilang pangkalan data lebih awal: school_info, softwaretesttips, test, company, dan origin.

|_+_|

Keputusan:

|_+_|

Output di atas memaparkan senarai pangkalan data yang dibuat.

dua. Gugurkan Pangkalan Data

Katakan kami ingin memadam salah satu pangkalan data di atas. Untuk tujuan ini, pernyataan 'DROP DATABASE' digunakan.

Sintaks:

|_+_|

Pertimbangkan bahawa kami ingin memadam pangkalan data 'ujian' daripada Skema SQL. Apabila anda memadam mana-mana pangkalan data, semua data yang terdapat di dalamnya akan dipadamkan. Anda mesti mempunyai keistimewaan pentadbir untuk memadam pangkalan data juga.

|_+_|

Kami telah memadam pangkalan data 'ujian'. Mari kita lihat senarai pangkalan data yang terdapat dalam skema.

|_+_|

Pengeluaran:

|_+_|

3. Gunakan dan Pilih Pangkalan Data

Dalam skema kami, terdapat beberapa pangkalan data. Katakan kita ingin bekerja dengan hanya satu pangkalan data tertentu; anda perlu memilih satu daripada semua pangkalan data. Selepas memilih satu pangkalan data, anda boleh melaksanakan semua operasi DDL di dalamnya. Untuk memilih pangkalan data, terdapat pernyataan USE.

Sintaks:

|_+_|

Kami akan memilih satu pangkalan data 'softwaretesttips' daripada senarai pangkalan data kami di mana kami akan melaksanakan semua operasi pangkalan data.

|_+_|

Apa-apa sahaja yang anda buat, jadual atau paparan, akan hadir dalam pangkalan data 'softwaretesttips'.

Ini adalah semua tutorial pantas tentang SQL. Kami kini akan mencipta satu jadual dalam pangkalan data 'softwaretesttips' dan melaksanakan semua operasi SQL pada jadual itu.

Cipta Jadual

Kami telah melihat sintaks mencipta jadual dan contohnya. Kenyataan ini ditulis seperti berikut,

|_+_|

Dalam kenyataan buat jadual, kami menentukan nama jadual, atribut dan jenis data. Kita juga boleh menggunakan kekangan pada atribut menggunakan kenyataan create table. Pastikan nama jadual adalah unik dan tidak digunakan sebelum ini.

Kami kini akan mencipta jadual menggunakan pernyataan 'buat jadual'. Mari kita cipta jadual 'PEKERJA', yang menyimpan data pekerja. Kami akan mencipta lima atribut untuk jadual ini: Emp_ID, Nama, Umur, Bandar dan Gaji.

|_+_|

Kami telah mencipta jadual 'PEKERJA,' dengan EMP_ID, NAMA, UMUR, BANDARAYA dan GAJI sebagai atributnya. Kunci utama jadual 'PEKERJA' ialah EMP_ID, yang tidak sepatutnya NULL. Selain itu, atribut NAME dan AGE juga tidak boleh NULL.

Selepas menulis penyataan jadual cipta di atas, anda akan melihat mesej 'jadual berjaya dibuat' pada skrin. Apabila anda ingin melihat atribut jadual atau skema jadual, taip arahan di bawah:

|_+_|

Pengeluaran:

|_+_|

Kita boleh menggugurkan jadual 'PEKERJA' menggunakan pernyataan DROP.

|_+_|


Selepas menjatuhkan jadual, ia akan dipadamkan daripada pangkalan data. Jika anda cuba menjalankan arahan 'DESC', ia akan mengakibatkan ralat seperti berikut:

|_+_|

Sisipkan Nilai dalam Jadual

Kami telah mempelajari cara membuat jadual dalam pangkalan data tertentu dan melepaskannya daripada pangkalan data. Sekarang, kita akan fokus pada memasukkan data ke dalam jadual. Pada bahagian awal artikel ini, kami telah melihat cara menulis pernyataan sisipan. Di sini, kita akan belajar menulis pernyataan sisipan menggunakan contoh.

Kami akan mengambil jadual di atas, 'PEKERJA,' dan memasukkan data pekerja ke dalamnya menggunakan kata kunci sisipan. Terdapat dua cara untuk memasukkan data ke dalam jadual.

|_+_|

Satu lagi bentuk paling mudah untuk menulis pernyataan INSERT ialah:

|_+_|

Dalam format pertama, kami telah menetapkan lajur dan nilai. Kami hanya menetapkan nilai dalam format kedua. Semasa menggunakan format kedua, pastikan anda memasukkan nilai dalam susunan yang betul kerana anda telah menentukan atribut semasa pembuatan jadual.

Mari kita masukkan data pekerja dalam jadual PEKERJA.

|_+_|

Kami telah memasukkan data enam pekerja menggunakan format pertama. Mari kita masukkan data pekerja menggunakan format kedua.

|_+_|

Kini, terdapat tujuh rekod atau baris dalam jadual PEKERJA. Untuk memaparkan data dalam jadual EMPLOYEE, pernyataan SELECT digunakan. Sekarang mari kita fokus pada pernyataan SELECT.

SELECT Kenyataan

Pernyataan SELECT digunakan untuk mendapatkan semula data daripada jadual tertentu. Apabila kami mengambil data menggunakan pernyataan SELECT, ia mengembalikan data dalam format jadual. Terdahulu, kita mempunyai cara untuk menulis pernyataan SELECT.

|_+_|

Pernyataan di atas akan memaparkan hanya lajur1 dan lajur2 daripada jadual yang ditentukan. Jika anda ingin menunjukkan semua data jadual tertentu, ‘*’ digunakan dan bukannya menyatakan semua lajur.

|_+_|

Kami akan memaparkan semua data dari jadual PEKERJA.

|_+_|

Pengeluaran:

|_+_|

Katakan anda ingin mendapatkan hanya nama dan ID pekerja; anda boleh menentukan EMP_ID dan NAME dalam pernyataan SELECT.

|_+_|

Pengeluaran:

|_+_|

Klausa MANA

Klausa WHERE digunakan untuk menentukan syarat untuk mendapatkan semula data. Ia juga digunakan untuk menggabungkan dua jadual yang berbeza. Apabila anda menggunakan syarat khusus dalam klausa WHERE, data diambil hanya jika syarat itu benar. Kata kunci WHERE biasanya digunakan apabila pengguna memerlukan maklumat khusus. Kata kunci ini digunakan dalam penyataan DELETE dan UPDATE.

|_+_|

Dalam keadaan ini, kita boleh menggunakan operator logik dan perbandingan. Pertimbangkan jadual PEKERJA. Sekarang mari kita dapatkan semula semua ID pekerja, nama dan gaji yang gajinya lebih besar daripada atau sama dengan 40,000. Oleh itu, kami akan menentukan syarat sebagai gaji >= 40,000 dalam klausa WHERE.

|_+_|

Pengeluaran:

|_+_|

Set keputusan mengandungi semua ID pekerja, nama dan gaji, yang gajinya lebih besar daripada atau sama dengan 40,000.

Jika keadaan anda dalam pernyataan WHERE mengandungi String, tuliskannya dalam petikan tunggal (‘ ‘). Mari kita dapatkan semula nama, ID dan umur pekerja yang mempunyai nama Mary.

|_+_|

Pengeluaran:

|_+_|

DAN dan ATAU Operator

Operator AND dan OR menggabungkan dua atau lebih keadaan berbeza. Apabila anda memerlukan data yang tepat dan ringkas daripada jadual, anda boleh menyertai beberapa syarat menggunakan operator AND atau OR.

Apabila anda menggabungkan syarat menggunakan operator AND, ia mengembalikan keputusan hanya jika semua syarat dipenuhi. Ia tidak akan mengembalikan data jika mana-mana syarat dipenuhi. Kami tahu bahawa pengendali digunakan dalam kata kunci WHERE. Ia ditulis seperti berikut:

|_+_|

Anda boleh menentukan beberapa syarat. Pertimbangkan jadual PEKERJA. Sekarang mari kita dapatkan semula nama, ID, umur dan gaji pekerja yang umurnya melebihi 40 tahun dan gaji lebih besar daripada atau sama dengan 35,000.

|_+_|

Pengeluaran:

|_+_|

Data pekerja diperoleh semula apabila kedua-dua syarat bertahan.

Operator OR juga menggabungkan dua atau lebih syarat. Tidak seperti kata kunci DAN, tidak ada keperluan untuk semua syarat menjadi benar yang dinyatakan dalam kata kunci WHERE menggunakan klausa OR. Walaupun satu syarat adalah benar, ia akan menulis data dalam set hasil. Anda boleh menentukan beberapa syarat menggunakan kata kunci ATAU seperti yang diberikan di bawah:

|_+_|

Daripada jadual PEKERJA, kami akan mendapatkan semula nama, bandar dan gaji, yang bandarnya adalah California atau gaji 30,000.

|_+_|

Pengeluaran:

|_+_|

Set keputusan di atas mengandungi semua nama pekerja yang sama ada tinggal di California atau mempunyai gaji 30,000.

MEMPUNYAI Klausa

Apabila anda ingin menapis hasil anda kepada data yang lebih khusus, klausa HAVING digunakan. Anda boleh menggunakan hanya fungsi agregat dalam kata kunci HAVING, yang akan menentukan syarat untuk mendapatkan data. Berikut adalah bentuk penulisan kata kunci HAVING:

|_+_|

Kami akan mengambil jadual, mempunyai nama jadual, PEKERJA2. Jadualnya adalah seperti berikut:

|_+_| |_+_|

Pengeluaran:

|_+_|

Fungsi Agregat

Fungsi agregat dalam pengurusan pangkalan data sistem mengambil berbilang data daripada rekod dan mengembalikan satu nilai selepas pengiraan. Terdapat lima fungsi agregat berbeza: sum(), avg(), count(), min(), dan max(). Semua fungsi ini hanya boleh digunakan pada data berangka, kecuali fungsi count(). Mari kita bincangkan setiap fungsi secara terperinci di bawah. Kami akan mengambil jadual PEKERJA untuk memahami fungsi agregat dengan contoh.

|_+_|
    Jumlah():Fungsi sum() mengembalikan jumlah semua nombor yang terdapat dalam lajur. Dalam jadual di atas, kami akan menjumlahkan semua gaji pekerja menggunakan fungsi sum(). Ia memerlukan berbilang data dan mengembalikan satu nilai.
|_+_|

Keputusan:

|_+_|
    Purata():Fungsi avg() juga mengembalikan satu nilai. Ia mengira jumlah semua nombor data yang terdapat dalam lajur dan membahagikannya dengan jumlah bilangan lajur. Fungsi avg() mengira purata semua data berangka.
|_+_|

Keputusan:

|_+_|
    Maks():Apabila anda perlu mencari nilai maksimum daripada set data, anda boleh menggunakan fungsi max() pada lajur tertentu. Ia juga mengembalikan satu nilai dalam set hasil.
|_+_|

Pengeluaran:

|_+_|
    Min ():Fungsi min() adalah bertentangan dengan fungsi max(). Ia mengembalikan nilai minimum dari lajur tertentu.
|_+_|

Pengeluaran:

|_+_|
    Kira ():Count() digunakan untuk mengira bilangan rekod dalam jadual. Anda boleh menggunakan fungsi count() pada semua jenis data dalam jadual. Ia juga mempertimbangkan data NULL dan pendua. Jika anda ingin mengalih keluar data pendua, anda perlu menambah kata kunci DISTINCT.
|_+_|

Pengeluaran:

|_+_|

Fungsi count() mengembalikan bilangan jenis dalam jadual PEKERJA.

|_+_|

Pengeluaran:

|_+_|

Di sini, kami menggunakan kata kunci DISTINCT dengan fungsi count() pada lajur CITY. Ia mengembalikan kiraan nama bandar yang berbeza. Anda juga boleh menambah frasa WHERE dengan fungsi count().

|_+_|

Pengeluaran:

|_+_|

Kami mempunyai beberapa pekerja yang berumur lebih daripada 40 tahun.

Kemas kini Kata Kunci

Anda boleh menggunakan kata kunci kemas kini jika anda ingin mengubah suai data yang terdapat dalam jadual. Dengan kata kunci kemas kini, anda juga boleh menambah kata kunci WHERE. Menggunakan kata kunci WHERE, anda boleh mengemas kini hanya rekod yang anda ingin ubah suai. Jika anda tidak menambah kata kunci WHERE, semua rekod akan dikemas kini. Anda boleh menulis pertanyaan kemas kini dengan cara berikut:

|_+_|

Jika anda perlu menggunakan perubahan pada dua atau lebih rekod, anda boleh menggunakan operator DAN dan ATAU. Ambil meja PEKERJA. Kami akan mengemas kini umur pekerja, mempunyai ID 405. Kami akan menetapkan umur 37 hingga 40 tahun.

|_+_|

Apabila anda mengemas kini umur pekerja, mempunyai ID 405, perubahan ini akan ditunjukkan dalam jadual. Kita akan tahu bagaimana jadual PEKERJA akan kelihatan selepas diubah suai.

Pengeluaran:

|_+_|

Sekarang andaikan anda ingin menukar gaji dan umur pekerja yang mempunyai ID 407. Kami akan menetapkan gaji kepada 55,000 dan umur kepada 35.

|_+_|

Pengeluaran:

|_+_|

Jadual di atas mengandungi data yang dikemas kini.

PADAM Pertanyaan

Apabila anda ingin memadam sebarang rekod daripada jadual, kata kunci padam digunakan. Jika anda ingin memadamkan tupel atau baris tertentu, tambahkan kata kunci WHERE untuk menentukan syarat. Gabungkan beberapa syarat menggunakan operator DAN atau ATAU. Anda boleh menulis pertanyaan padam seperti yang diberikan di bawah:

|_+_|

Sebagai contoh, ambil jadual PEKERJA. Kami akan memadamkan rekod pekerja yang mempunyai ID pekerja 405.

|_+_|

Jadual tidak akan termasuk rekod pekerja yang mempunyai ID pekerja 405 selepas melaksanakan pertanyaan di atas.

Pengeluaran:

|_+_|

Jika anda ingin memadam semua baris daripada jadual, gunakan pertanyaan di bawah,

|_+_|

Selepas melaksanakan pertanyaan ini, hanya data akan dipadamkan, bukan skema jadual.

PESANAN MENGIKUT Klausa

Anda boleh memesan data lajur anda dalam susunan menaik atau menurun menggunakan frasa ORDER BY. Secara lalai, data lajur disusun dalam tertib menaik. Ikuti format di bawah untuk menulis frasa ORDER BY.

|_+_|

Senarai lajur hendaklah mengandungi semua lajur yang anda ingin isih atau susun mengikut tertib. Ambil jadual PEKERJA yang sama untuk memahami frasa ini dengan contoh mudah. Kami akan menambah nama lajur, NAMA dan GAJI pada senarai lajur.

|_+_|

Jadual akan disusun mengikut nama mengikut tertib menaik.

Pengeluaran:

|_+_|

Sekarang, kami akan menjana jadual dalam tertib menurun menggunakan lajur NAME.

|_+_|

Pengeluaran:

|_+_|

KUMPULAN MENGIKUT Klausa

Untuk pengumpulan data yang sama, klausa GROUP BY digunakan. Kata kunci WHERE sentiasa diikuti oleh klausa GROUP BY, dan frasa GROUP BY diikuti oleh klausa ORDER BY. Ia mengumpulkan data yang serupa ke dalam kumpulan yang ditentukan oleh syarat dalam klausa WHERE. Klausa GROUP BY ditulis seperti berikut:

|_+_|

Kami akan menggunakan frasa GROUP BY pada jadual lain. Pertimbangkan jadual di bawah PEKERJA1.

|_+_|

Di sini, Steve bekerja di Chicago dan juga California. Oleh itu, kita boleh mengumpulkan data Steve menggunakan frasa GROUP BY, yang akan memaparkan nama dan gaji keseluruhannya.

|_+_|

Pengeluaran:

|_+_|

Kata kunci DISTINCT

Kata kunci DISTINCT mengalih keluar semua nilai pendua daripada jadual. Banyak jadual mungkin mengandungi data berlebihan atau pendua. Dalam situasi sedemikian, menggunakan kata kunci DISTINCT akan membantu untuk mendapatkan semula data unik. Anda boleh menentukan lajur yang anda perlukan untuk mengambil data unik. Berikut adalah bentuk penulisan kata kunci DISTINCT:

|_+_|

Untuk memahami cara kata kunci DISTINCT berfungsi, mari kita ambil jadual PEKERJA. Mula-mula, kita akan susun jadual mengikut tertib menaik mengikut gaji.

|_+_|

Pengeluaran:

|_+_|

Dalam set hasil di atas, terdapat data pendua, iaitu, 30,000 hadir dalam dua baris berbeza. Apabila kami menggunakan kata kunci DISTINCT, hasilnya tidak akan mengandungi sebarang data pendua.

|_+_|

Pengeluaran:

|_+_|

SQL JOIN

DALAM SQL, join menggabungkan rekod daripada dua atau lebih jadual ke dalam satu jadual. JOIN ialah sumber untuk menggabungkan jadual menggunakan lajur biasa dalam jadual. Kita akan melihat contoh mengiktiraf bagaimana JOIN dijalankan.

Kami akan mengambil dua jadual dan menyertai dua jadual ini berdasarkan atribut sepunya di antara mereka. Ambil meja PEKERJA. Kami akan membuat jadual lain, JABATAN.

|_+_|

Sekarang kami mempunyai dua meja. Kami akan menyertai kedua-dua jadual ini dan memaparkan set keputusan. Terdapat atribut biasa dalam kedua-dua jadual, EMP_ID.

|_+_|

Hasilnya adalah seperti berikut:

|_+_|

Dalam klausa WHERE, kita boleh menyertai jadual atau hubungan menggunakan beberapa operator: , =, ANTARA, !, NOT, dll. Cantuman boleh dibahagikan kepada beberapa jenis. Gabungan INNER bergabung dengan jadual dan mengembalikan hasil data yang sepadan antara dua hubungan. Cantuman lain ialah cantuman KIRI, yang mengembalikan semua data dari jadual kiri. Jika tiada padanan untuk jadual kiri dengan jadual kanan, NULL ditulis. Gabungan RIGHT menghasilkan semua data dari jadual yang betul. Untuk jadual yang betul yang padanannya tidak tersedia, tulis NULL.

Sertai Kiri

Gabungan kiri menggabungkan dua hubungan yang mempunyai sifat yang sama di dalamnya. Anda boleh menentukan lajur untuk dipaparkan daripada kedua-dua perhubungan. Semua data dari jadual kiri terdapat dalam set hasil. Untuk data jadual kanan yang tidak sepadan dengan data jadual kiri, NULL ditulis. Kita akan lihat contoh join kiri menggunakan PEKERJA dan JABATAN.

|_+_|

JABATAN

|_+_|

Kami kini akan menulis pertanyaan untuk menyertai kedua-dua hubungan ini menggunakan kata kunci LEFT JOIN.

|_+_|

Keputusan:

|_+_|

Kanan Sertai

Cantuman kanan juga bergabung dengan dua jadual. Apabila kita menggunakan cantuman kanan pada dua hubungan, ia akan memaparkan semua data jadual kanan yang sepadan dengan jadual kiri. Untuk jadual kiri tidak sepadan dengan data jadual kanan, NULL ditulis. Kami akan mengambil dua perhubungan yang sama, PEKERJA dan JABATAN, untuk memahami kata kunci sertai yang betul.

|_+_|

Pengeluaran:

|_+_|

Kesimpulan

Bahasa pertanyaan berstruktur (SQL) digunakan oleh semua pangkalan data utama: MySQL, MS Access, Oracle, dll. Bahasa ini membolehkan pengguna mencipta jadual dalam pangkalan data dan memanipulasinya menggunakan beberapa klausa, operator, pernyataan. Artikel ini ialah rujukan pantas SQL untuk pemula. Pengguna baru boleh mempelajari semua asas SQL daripada tutorial ini.

Siaran ini ialah rujukan pantas SQL, yang akan memberikan pengetahuan asas tentang memanipulasi data dalam pangkalan data. Kami telah melihat semua sintaks asas perintah DML, DDL, TCL, DQL, DCL. Kemudian, kami mempelajari klausa yang berbeza, integriti data , jenis data, pengendali dan ungkapan. Dalam bahagian kemudian, kami telah melihat contoh untuk mencipta, memanipulasi dan menjatuhkan data dalam pangkalan data.