Kueri sederhana untuk mengambil data menggunakan SQL. Bahasa kueri SQL Contoh kueri pemilihan sql




CONTOH DATA SEDERHANA

Mari kita asumsikan bahwa database relasional yang terdiri dari satu atau lebih tabel telah dibuat dan Anda telah terhubung dengannya. Dalam hal ini, tugas praktis yang umum adalah memperoleh (mengekstraksi) data yang diperlukan. Misalnya, Anda mungkin hanya ingin melihat seluruh isi tabel dalam database atau beberapa bidangnya. Dalam hal ini, Anda mungkin tidak ingin mendapatkan semua catatan, tetapi hanya catatan yang memenuhi ketentuan yang ditentukan. Namun, lebih sering ada tugas yang lebih menarik dan kompleks yaitu mengekstraksi data dari beberapa tabel sekaligus. Data dari dua tabel atau lebih harus digabungkan menjadi satu tabel agar dapat disajikan untuk dilihat, dianalisis, atau diproses lebih lanjut. Bahasa SQL memberikan banyak peluang untuk ini, yang akan kami pertimbangkan.

Sebagai hasil dari eksekusi ekspresi SQL (ekspresi SQL), sebuah tabel dibuat yang berisi data yang diminta atau kosong jika tidak ditemukan data yang cocok dengan kueri. Tabel ini, disebut juga tabel hasil, hanya ada selama sesi dengan database dan tidak ditambahkan ke jumlah tabel yang disertakan dalam database. Dengan kata lain, tidak disimpan di hard drive komputer seperti tabel database aslinya, oleh karena itu disebut juga virtual.

Mengambil data dari beberapa tabel, memprosesnya, dan menggunakan subkueri (kueri yang diperlukan sebagai kueri perantara untuk mendapatkan hasil akhir) adalah topik kueri yang kompleks. Di sini kita akan fokus pada masalah pengambilan data dari satu tabel dalam kondisi yang relatif sederhana untuk memilih, mengelompokkan, dan mengurutkan catatan. Namun, pernyataan SQL yang digunakan dalam kueri sederhana untuk memilih data juga digunakan dalam kueri kompleks yang ditujukan tidak hanya untuk mengambil, tetapi juga untuk mengubah data. Mulailah dari hal yang sederhana agar nantinya mudah untuk memahami hal yang rumit. Materi dalam bab ini berkaitan dengan topik dasar SQL, meskipun banyak pengguna database mungkin terbatas pada topik tersebut. Yang terakhir ini sangat mungkin terjadi, karena materi dalam bab ini sendiri sangat praktis.

Semua pernyataan SQL yang dimaksudkan untuk mengambil data dari tabel database yang ada dimulai dengan kata kunci (pernyataan) SELECT. Untuk menyempurnakan kueri, digunakan operator tambahan, seperti FROM (dari), WHERE (di mana), dll. Sekarang penting untuk memahami dan mengingat bahwa hasil dari mengeksekusi kueri yang diformulasikan sebagai ekspresi SQL adalah tabel yang berisi permintaan data. Tabel ini bersifat virtual dalam arti hanya mewakili hasil query dan bukan milik database. SQL memungkinkan Anda mengubah database yang ada - membuat dan menambahkan tabel baru ke dalamnya, serta mengubah dan menghapus tabel yang sudah ada.

Ekspresi SQL dasar untuk mengambil data

Untuk memilih record yang diperlukan dari tabel database, Anda setidaknya harus menentukan kolom dan nama tabel. Wajar jika persyaratan ini dirumuskan sebagai berikut:

PILIH kolom ini dan itu DARI tabel ini dan itu;

Tentu saja, Anda mungkin tidak ingin memilih semua rekaman dalam tabel, namun hanya rekaman yang memenuhi kondisi tertentu. Dalam praktiknya, inilah yang terjadi. Mari kita kesampingkan untuk saat ini pertimbangan pembentukan kondisi untuk memilih record, dan fokus pada pemilihan semua record dari tabel tertentu. Kueri SQL ke database, yang hasilnya berupa tabel yang diperoleh dari tabel yang ditentukan dalam kueri, tetapi berbeda karena hanya berisi kolom yang ditentukan, terlihat seperti ini:

PILIH daftar Kolom DARI Daftar tabel;

Pernyataan SELECT dan FROM dalam pernyataan SQL yang mendefinisikan pemilihan data diperlukan, artinya tidak ada satupun yang dapat dilewati. Pernyataan SQL yang hanya berisi pernyataan-pernyataan ini adalah ekspresi utama yang mendefinisikan kueri ke database untuk mengambil data. Kueri ini membuat tabel virtual yang berisi kolom tertentu dan semua rekaman dalam tabel sumber.

Pernyataan SELECT memproyeksikan hubungan yang ditentukan dalam ekspresi FROM ke kumpulan atribut (kolom) tertentu yang ditentukan dalam pernyataan SELECT.

Klausa FROM menentukan daftar nama tabel database yang datanya ingin Anda pilih. Dalam kasus yang paling sederhana daftarTabel hanya berisi satu nama tabel. Jika terdapat beberapa tabel, maka namanya dalam daftar dipisahkan dengan koma. Jika lebih dari satu tabel ditentukan dalam klausa FROM, tabel yang dihasilkan diperoleh dari produk Cartesian dari tabel yang terdaftar. Kadang-kadang ini digunakan untuk tujuan khusus, namun lebih sering daripada tidak, hanya satu tabel yang ditentukan dalam klausa FROM.

Daftar kolom adalah daftar nama kolom yang dipisahkan koma sebagaimana ditentukan dalam tabel yang ditentukan dalam klausa FROM. Tentu saja, Anda dapat menentukan semua atau hanya beberapa kolom. Jika Anda ingin mendapatkan semua kolom dalam tabel, alih-alih daftar kolom, cukup tentukan simbol (*). Jika lebih dari satu tabel ditentukan dalam klausa FROM, nama kolom dalam klausa SELECT harus diawali untuk menunjukkan tabel mana yang dirujuk. Awalan dipisahkan dari nama kolom dengan sebuah titik. Misalnya, ekspresi Clients.Address berarti kolom Alamat dari tabel Klien.

Kueri sepele yang mengembalikan semua data (semua kolom dan semua catatan) dari satu tabel dirumuskan seperti ini:

PILIH * DARI NamaTabel ;

Ekspresi SQL utama dapat dilengkapi dengan pernyataan lain yang menyempurnakan kueri. Operator WHERE (di mana) paling sering digunakan, yang dengannya Anda dapat mengatur kondisi untuk memilih catatan (baris tabel). Jadi, jika klausa SELECT menentukan kolom tabel yang ditentukan dalam klausa FROM, klausa WHERE menentukan catatan (baris) dari tabel tersebut. Ekspresi yang mendefinisikan kueri untuk mengambil data yang terletak di tabel tertentu memiliki bentuk berikut:

PILIH * DARI NamaTabel DI MANA Kondisi pencarian ;

Kondisi yang ditentukan dalam klausa WHERE mengambil salah satu dari dua nilai Boolean: benar atau salah. Dengan kata lain, ini adalah ekspresi Boolean. Saat memproses kueri, kondisi diperiksa untuk setiap catatan tabel. Jika benar untuk record tertentu, maka record tersebut dipilih dan akan disajikan dalam tabel hasil. Jika tidak, rekaman tidak akan dipilih dan tidak muncul di tabel hasil. Jika klausa WHERE tidak ditentukan dalam pernyataan SQL, tabel hasil akan berisi semua catatan dari tabel yang ditentukan dalam klausa FROM. Jadi, klausa WHERE mendefinisikan filter rekaman. Filter meneruskan beberapa hal ke dalam tabel hasil, dan membuang yang lain.

Saring- salah satu konsep dasar di bidang bekerja dengan database. Dalam literatur terkadang Anda dapat menemukan interpretasi yang berbeda-beda. Jadi, "filter catatan" bisa berarti "mendapatkan catatan", atau sebaliknya - "menolak catatan". Di sini, istilah “filter”, “melewati filter”, atau “menerapkan filter” selalu berarti “memilih data yang memenuhi kondisi filter”.

Anda dapat menggunakan kata kunci segera setelah pernyataan SELECT sebelum daftar kolom SEMUA(semua) dan BERBEDA(berbeda), yang menunjukkan catatan mana yang akan disajikan dalam tabel hasil. Jika kata kunci ini tidak digunakan, implikasinya adalah semua record harus dipilih, yang juga sesuai dengan penggunaan kata kunci ALL. Saat menggunakan DISTINCT, hanya rekaman unik yang disajikan di tabel hasil. Selain itu, jika tabel sumber berisi beberapa record yang identik, maka hanya record pertama yang dipilih.

Catatan

Di Microsoft Access, selain kata kunci ALL dan DISTINCT, setelah SELECT Anda dapat menggunakan kata kunci tersebut ATAS dengan parameter tambahan. Ekspresi ATAS n mensyaratkan bahwa hanya n catatan pertama yang memenuhi kondisi kueri tertentu yang disertakan dalam pemilihan data. Ini adalah batasan kondisi pencarian record yang diperlukan, yang dirumuskan dalam klausa WHERE. Jika tabel sumber sangat besar, maka DISTINCT dapat mempercepat responsnya.

Di Access Anda juga bisa menggunakan ekspresi ATAS n PERSEN, untuk menunjukkan bahwa n dinyatakan sebagai persentase dari jumlah total catatan. Tidak sulit untuk memahami bahwa penggunaan ekspresi seperti itu tidak bertujuan untuk mempercepat pencarian, tetapi untuk mendapatkan tabel yang bebas dari data yang tidak perlu.

Judul kolom di tabel hasil dapat didefinisikan ulang sesuai kebijaksanaan Anda dengan menetapkan apa yang disebut nama samaran . Untuk melakukan ini, dalam daftar kolom setelah kolom terkait, tulis ekspresi seperti: SEBAGAI kolom_heading

Misalnya:

PILIH Nama Klien SEBAGAI Klien, Alamat SEBAGAI Alamat DARI Klien;

Alias ​​juga dapat ditentukan untuk setiap tabel setelah kata kunci FROM. Untuk melakukan ini, cukup tentukan alias yang dipisahkan dengan spasi tepat setelah nama tabel terkait. Alias ​​tabel, yang lebih pendek dari namanya, berguna untuk kueri yang kompleks. Misalnya:

PILIH Т1.Nama, Т2.Alamat DARI Klien Т1, Kontak Т2;

Minta klarifikasi

Ekspresi SQL utama untuk memilih data adalah:

PILIH daftar Kolom DARI daftar Tabel;

Kueri ini mengembalikan tabel yang diperoleh dari tabel yang ditentukan dalam pernyataan FROM dengan memilih hanya kolom yang ditentukan dalam pernyataan SELECT. Untuk memilih catatan (baris) yang diperlukan dari tabel sumber, ekspresi yang mengikuti kata kunci WHERE (operator) digunakan. Klausa WHERE adalah klausa yang paling umum digunakan, meskipun tidak wajib, dalam pernyataan SQL. Karena popularitasnya maka ini dapat dianggap sebagai komponen utama ekspresi SQL. Selain WHERE, operator lain digunakan dalam ekspresi SQL untuk menyaring kueri.

Untuk memperjelas permintaan pemilihan data, digunakan beberapa operator tambahan:

· DI MANA(di mana) - menunjukkan catatan yang harus disertakan dalam tabel hasil (filter catatan);

· KELOMPOK OLEH(kelompokkan berdasarkan) - mengelompokkan catatan berdasarkan nilai kolom tertentu;

· MEMILIKI(memiliki, disediakan) - menunjukkan grup rekaman yang harus disertakan dalam tabel hasil (filter grup);

· DIPESAN OLEH(urutkan berdasarkan) - mengurutkan (memesan) catatan.

Pernyataan-pernyataan ini bersifat opsional. Anda tidak dapat menggunakannya sama sekali, atau hanya menggunakan sebagian, atau sekaligus. Jika beberapa operator digunakan, operator tersebut akan digunakan dalam ekspresi SQL dalam urutan yang ditentukan dalam daftar. Jadi, kueri data dari tabel menggunakan semua operator penyempurnaan kueri yang terdaftar memiliki bentuk berikut:

PILIH daftar Kolom DARI Nama Tabel

Kondisi pencarian DIMANA

KELOMPOK BERDASARKAN kolomGrup

MEMILIKI kondisi pencarian

ORDER BY Sortir kondisi;

Urutan operator yang dicantumkan dalam ekspresi SQL tidak cocok dengan urutan eksekusinya. Namun, mengetahui urutan eksekusi pernyataan akan membantu Anda menghindari banyak kesalahpahaman. Jadi, pernyataan ekspresi SQL yang terdaftar dieksekusi dalam urutan berikut, meneruskan hasilnya satu sama lain dalam bentuk tabel:

1. DARI- memilih tabel dari database; jika beberapa tabel ditentukan, produk kartesiusnya dijalankan dan tabel yang dihasilkan diteruskan ke operator berikutnya untuk diproses.

2. DI MANA- catatan yang memenuhi kondisi pencarian dipilih dari tabel dan sisanya dibuang.

3. KELOMPOK OLEH- grup catatan dibuat yang dipilih menggunakan operator WHERE (jika ada dalam ekspresi SQL); setiap grup sesuai dengan beberapa nilai di kolom pengelompokan. Kolom pengelompokan dapat berupa kolom apa saja pada tabel yang ditentukan dalam klausa from, bukan hanya kolom yang ditentukan dalam SELECT.

4. MEMILIKI- memproses setiap grup rekaman yang dibuat, hanya menyisakan rekaman yang memenuhi kondisi pencarian; operator ini hanya digunakan bersama dengan operator GROUP BY.

5. PILIH- hanya memilih kolom tertentu dari tabel yang diperoleh dari penerapan operator yang terdaftar.

6. DIPESAN OLEH- mengurutkan catatan tabel. Dalam hal ini, dalam kondisi pengurutan, Anda hanya dapat mengakses kolom yang ditentukan dalam pernyataan SELECT.

Katakanlah di antara tabel-tabel di database Anda terdapat tabel Pelanggan, yang berisi kolom dengan nama: nama, Alamat, Jumlah_Pesanan dan, mungkin, beberapa lainnya. Semantik tabel ini sepele. Ini mencatat data pelanggan dan jumlah uang yang mereka bayarkan ke perusahaan Anda menggunakan layanannya.

Beras. 1. Meja klien

Misalkan kita tidak tertarik pada semua data dalam tabel ini, tetapi hanya data yang berhubungan dengan klien yang membayar perusahaan lebih dari 500 (sekarang tidak masalah dalam mata uang apa pembayaran dilakukan). Lebih tepatnya, kami memerlukan nama dan alamat klien yang telah membayar perusahaan lebih dari 500 unit moneter. Oleh karena itu, kita tidak perlu mendapatkan semua yang terdapat dalam tabel Klien, tetapi hanya sebagian saja, baik berdasarkan kolom maupun catatan. Ekspresi SQL berikut cocok untuk tujuan ini:

DIMANA Jumlah_Pesanan > 500;

Pernyataan SQL ini adalah kueri yang, dalam bahasa alami, terlihat seperti ini:

PILIH KOLOM nama, alamat DARI TABEL pelanggan WHERE order_amount > 500;

Di sini, catatan dipilih dari tabel Pelanggan di mana nilai kolom Jumlah_Pesanan melebihi 500. Dalam hal ini, hanya dua kolom tabel Pelanggan yang akan disajikan dalam tabel yang dihasilkan: Nama dan Alamat.

Kolom Order_Amount, yang tersedia di tabel sumber, tidak ditampilkan dalam kasus ini (tidak ada di tabel yang dihasilkan). Namun, jika Anda perlu melihat jumlah tertentu yang lebih besar dari 500, cukup dengan menunjukkan kolom Jumlah_Pesanan dalam daftar kolom setelah pernyataan SELECT.

Beras. 2. Hasil query "WHERE Order_Amount > 500"

Pernyataan SQL berikut membuat tabel virtual yang berisi tiga Kolom: Wilayah, Nama dan Alamat. Dari tabel Pelanggan, hanya catatan yang dipilih yang Jumlah_Pesanannya melebihi 500, dan dikelompokkan berdasarkan nilai kolom Wilayah, Nama, dan Alamat. Artinya pada tabel hasil, record yang memiliki nilai yang sama pada kolom Region akan ditempatkan bersebelahan. Terakhir, semua record di tabel hasil diurutkan berdasarkan nilai kolom Nama (Gambar 3).

PILIH Wilayah, Nama, Alamat DARI Klien

DIMANA Jumlah_Pesanan > 500

KELOMPOK BERDASARKAN Wilayah, Nama, Alamat

ORDER BERDASARKAN Nama;

Beras. 3. Hasil query "WHERE Order_Amount > 500"
dengan mengelompokkan "GROUP BY Region, Name, Address" dan mengurutkan "ORDER BY Name"

Operator untuk memilih catatan dari tabel sumber mungkin hidup berdampingan dengan operator SQL lainnya.

klausa WHERE

Kondisi pencarian dalam pernyataan WHERE (di mana) adalah ekspresi logis, yaitu mengambil salah satu dari dua kemungkinan nilai - benar (TRUE) atau salah (FALSE). Misalnya, ekspresi Jumlah_Pesanan > 500 bernilai benar jika rekaman tabel saat ini memiliki nilai kolom Jumlah_Pesanan lebih besar dari 500. Jika tidak, ekspresi bernilai salah. Ekspresi logis yang sama bisa benar untuk beberapa catatan dan salah untuk yang lain. Secara umum, dalam SQL, ekspresi Boolean juga dapat memiliki nilai yang tidak ditentukan. Hal ini terjadi ketika beberapa elemen dalam ekspresi adalah NULL. Jadi, dalam SQL kita tidak berurusan dengan logika dua nilai klasik, tetapi dengan logika tiga nilai.

Ekspresi yang mengikuti klausa WHERE mengembalikan salah satu dari tiga nilai: benar, salah, atau NULL. Saat kueri (ekspresi SQL) dijalankan, ekspresi Boolean WHERE diterapkan ke semua rekaman di tabel sumber. Jika benar untuk entri tertentu dalam Tabel sumber, maka entri tersebut dipilih dan akan disajikan dalam tabel hasil; jika tidak, entri tersebut tidak akan disertakan dalam tabel hasil.

Saat menyusun ekspresi logis, kata kunci khusus dan simbol operasi perbandingan digunakan, yang disebut predikat . Predikat pertama kali muncul di SQL: 1999. Misalnya, dalam ekspresi Order_Amount > 500, digunakan predikat perbandingan (>).

Ekspresi dengan klausa WHERE digunakan tidak hanya saat mengambil data (yaitu, dengan pernyataan SELECT), tetapi juga saat menyisipkan, mengubah, dan menghapus record. Dengan demikian, materi pada bagian ini mempunyai implikasi di luar cakupan topik pengambilan sampel data ini.

Paling umum digunakan predikat perbandingan , seperti (=), (<),(>), (<>), (<=) и (>=). Namun, ada yang lain. Berikut ini adalah daftar semua predikat:

predikat perbandingan:

(=) - sama dengan, (<) - меньше, (>) - lagi, (< >) - tidak sama,

(<=) – меньше или равно (не больше), (>=) - lebih besar atau sama (tidak kurang);

· SUKA, TIDAK SUKA;

· SEMUA, BEBERAPA, APAPUN;

Catatan

Dalam bahasa pemrograman prosedural normal, simbol perbandingan yang tercantum disebut operator perbandingan, bukan predikat, tetapi apa pun sebutannya untuk segala sesuatu yang terkait dengan simbol perbandingan, esensinya tetap sama.

Predikat BETWEEN (antara) memungkinkan Anda menentukan ekspresi untuk memeriksa apakah suatu nilai termasuk dalam rentang yang ditentukan oleh nilai batas. Misalnya:

DIMANA Jumlah_Pesanan ANTARA 100 DAN 750

Kata kuncinya di sini adalah DAN mewakili kesatuan logis DAN Nilai batas (dalam contoh ini adalah 100 dan 750) termasuk dalam rentang tersebut. Selain itu, nilai batas pertama tidak boleh lebih besar dari nilai batas kedua.

Ekspresi dengan predikat perbandingan setara dengan berikut ini:

DIMANA Jumlah_Pesanan >= 100 DAN Jumlah_Pesanan<= 750

Selain data numerik, tipe data berikut dapat digunakan dalam ekspresi dengan BEETWEEN: karakter, bit, tanggal-waktu. Jadi, misalnya, untuk memilih rekaman yang nama pelanggannya berada dalam rentang dari A hingga F, Anda bisa menggunakan ekspresi berikut:

PILIH Nama, Alamat DARI Klien

DIMANA Nama ANTARA "A" DAN "F" ;

DALAM dan BUKAN DALAM

Predikat IN (in) dan NOT IN (not in) digunakan untuk memeriksa kemunculan suatu nilai dalam daftar nilai tertentu. Misalnya, untuk memilih catatan pelanggan dari wilayah tertentu, Anda dapat menggunakan ekspresi berikut:

PILIH Nama, Alamat DARI Klien

DI MANA Wilayah DI (“Barat Laut”, “Wilayah Stavropol”,

"wilayah Irkutsk");

Jika Anda perlu mendapatkan data tentang semua klien bukan dari Moskow dan Barat Laut, Anda dapat menggunakan predikat NOT IN:

PILIH Nama, Alamat DARI Klien

DI MANA Wilayah TIDAK DI ("Moskow", "St. Petersburg");

SUKA dan TIDAK SUKA

Predikat LIKE dan NOT LIKE digunakan untuk menguji kecocokan sebagian string karakter. Misalnya, kolom Telepon dalam tabel berisi nomor telepon lengkap, namun Anda ingin memilih hanya rekaman yang nomor teleponnya dimulai dengan 348 atau berisi kombinasi angka tersebut.

Kriteria kecocokan sebagian ditentukan menggunakan dua karakter wildcard: tanda persen (%) dan garis bawah (_). Tanda persen berarti kumpulan karakter apa pun, termasuk yang kosong, dan garis bawah berarti karakter tunggal apa pun. Misalnya, untuk memilih rekaman pelanggan yang nomor teleponnya dimulai dengan 348, Anda bisa menggunakan ekspresi berikut:

DIMANA Telepon SEPERTI "348%";

Misalkan kolom Alamat berisi alamat pos lengkap (kode pos, nama kota, nama jalan, dll). Jika Anda perlu memilih catatan tentang klien yang tinggal di St. Petersburg, maka ekspresi berikut dapat digunakan:

PILIH Nama, Alamat, Telepon DARI Klien

DIMANA Alamat SEPERTI "%St. Petersburg%";

Jika Anda ingin mengecualikan semua klien yang tinggal di Moskow, gunakan ungkapan ini:

PILIH Nama, Alamat, Telepon DARI Klien

DIMANA Alamat TIDAK SEPERTI "%Moscow%";

Anda mungkin perlu memilih rekaman yang berisi karakter persen dan/atau garis bawah. Maka karakter tersebut perlu dianggap oleh penerjemah SQL bukan sebagai karakter wildcard. Agar persen atau garis bawah dapat diartikan secara harfiah, harus didahului dengan karakter kontrol khusus. Karakter ini dapat didefinisikan secara sewenang-wenang, asalkan tidak muncul sebagai elemen data. Contoh berikut menunjukkan bagaimana hal ini dapat dilakukan:

PILIH- Nama, Alamat, Diskon_persentase DARI Klien

DIMANA Diskon_persentase SEPERTI "20#%"

Di sini, kata kunci ESCAPE diikuti dengan simbol yang digunakan sebagai kontrol. Dengan cara yang sama, Anda dapat menonaktifkan karakter kontrol itu sendiri.

Predikat IS NULL digunakan untuk mengidentifikasi record yang kolom tertentu tidak memiliki nilai. Misalnya, untuk mengambil catatan pelanggan yang alamatnya tidak ditentukan, Anda dapat menggunakan ekspresi berikut:

DI MANA Alamat NULL;

Untuk mengambil catatan di mana kolom Alamat berisi beberapa nilai tertentu (yaitu, non-NULL), Anda dapat menggunakan ekspresi serupa, tetapi dengan operator logika NOT:

PILIH Nama, Alamat, Wilayah DARI Klien

DIMANA Alamat BUKAN NULL;

Anda tidak boleh menggunakan predikat perbandingan NULL seperti Alamat = NULL.

Pernyataan SQL SELECT ditujukan untuk kueri untuk memilih data dari database. Ini dapat digunakan tanpa syarat (memilih semua baris di semua kolom atau semua baris di kolom tertentu) atau dengan beberapa kondisi (memilih baris tertentu) yang ditentukan dalam klausa WHERE. Mari berkenalan dengan alat SQL yang dapat digunakan untuk menyetel kondisi pemilihan data ini, dan juga mempelajari cara menggunakan pernyataan SELECT di subkueri.

SELECT untuk memilih kolom tabel

Kueri dengan pernyataan SELECT untuk memilih semua kolom tabel memiliki sintaks berikut:

PILIH * DARI TABLE_NAME

Artinya, untuk memilih semua kolom tabel, Anda perlu memberi tanda bintang setelah kata SELECT.

Contoh 1. Ada database perusahaan - Perusahaan. Ini berisi tabel Org (Struktur Perusahaan) dan Staf (Karyawan). Anda harus memilih semua kolom dari tabel. Kueri terkait untuk memilih semua kolom dari tabel Org adalah sebagai berikut:

PILIH * DARI ORG

Kueri ini akan menghasilkan yang berikut ini (untuk memperbesar gambar, klik kiri di atasnya):

Kueri untuk memilih semua kolom dari tabel Staf terlihat seperti ini:

PILIH * DARI STAF

Kueri ini akan mengembalikan yang berikut:


Untuk memilih kolom tabel tertentu, alih-alih menggunakan tanda bintang, kita perlu mencantumkan nama semua kolom yang perlu dipilih, dipisahkan dengan koma:

PILIH SELECTABLE_COLUMNS DARI TABLE_NAME

Contoh 2. Misalkan Anda perlu memilih kolom Depnumb dan Deptname dari tabel Org, yang berisi data masing-masing jumlah departemen perusahaan dan namanya. Permintaan untuk mendapatkan sampel seperti itu adalah sebagai berikut:

PILIH DEPNUMB, NAMA DEPT DARI ORG

Dan dari tabel Staf Anda perlu memilih kolom DEPT, NAMA, PEKERJAAN, yang masing-masing berisi data tentang nomor departemen tempat karyawan tersebut bekerja, nama dan posisinya:

PILIH DEPT, NAMA, PEKERJAAN DARI STAF

Untuk memilih baris tertentu dalam suatu tabel, bersama dengan pernyataan SELECT, Anda memerlukan kata kunci WHERE, yang menunjukkan nilai tertentu atau beberapa nilai yang terdapat dalam baris yang kami minati. Kondisi paling sederhana ditentukan menggunakan operator perbandingan dan persamaan (, =), serta kata kunci IS. Kondisinya bisa beberapa, kemudian dicantumkan menggunakan kata kunci AND. Kueri pemilihan baris memiliki sintaks berikut:

Contoh 4. Pada contoh sebelumnya, kita memilih baris dari tabel hanya dengan nilai satu kolom - DEPT. Misalkan sekarang Anda perlu memilih data tentang karyawan yang bekerja di departemen ke-38 dan berposisi sebagai Panitera. Untuk melakukan ini, di bagian WHERE, nilai yang sesuai harus dicantumkan menggunakan kata AND:


Contoh 5. Misalkan Anda perlu memilih dari tabel Staf pengidentifikasi dan nama karyawan yang jumlah komisinya tidak terbatas. Untuk melakukan ini, di bagian WHERE, sebelum menentukan nilai kolom COMM - NULL, Anda tidak perlu memberi tanda sama dengan, tetapi kata IS:

Kueri ini akan mengembalikan data berikut:


Tanda perbandingan juga digunakan untuk menunjukkan nilai pada baris yang ingin dipilih.

Menggunakan SELECT dan predikat IN, OR, BETWEEN, LIKE

Predikat - kata IN, OR, BETWEEN, LIKE di bagian WHERE - juga memungkinkan Anda memilih rentang nilai tertentu (IN, OR, BETWEEN) atau nilai dalam baris (LIKE) yang ingin Anda pilih dari meja. Kueri dengan predikat IN, OR, BETWEEN mempunyai sintaksis sebagai berikut:

Kueri dengan predikat LIKE memiliki sintaks berikut:

Contoh 7. Misalkan Anda ingin memilih dari tabel Staf nama, jabatan, dan masa kerja karyawan yang bekerja di departemen bernomor 20 atau 84. Hal ini dapat dilakukan dengan query berikut:

Hasil permintaan:


Contoh 8. Misalkan sekarang Anda ingin memilih data yang sama dari tabel Staf seperti pada contoh sebelumnya. Kueri dengan kata OR mirip dengan kueri dengan kata IN dan mencantumkan nilai yang diinginkan dalam tanda kurung. Permintaannya adalah sebagai berikut:

Contoh 9. Mari kita pilih dari tabel yang sama nama, jabatan dan masa kerja karyawan yang gajinya antara 15.000 dan 17.000 inklusif:

Hasil permintaan:


Predikat LIKE digunakan untuk memilih string yang nilainya berisi karakter yang ditentukan setelah predikat di antara tanda kutip (“”).

Contoh 10. Mari kita pilih dari tabel yang sama nama, jabatan dan masa kerja pegawai yang namanya diawali huruf S dan terdiri dari 7 karakter:

Garis bawah (_) menandakan karakter apa pun. Hasil permintaan:


Contoh 11. Mari kita pilih dari tabel yang sama nama, jabatan dan masa kerja pegawai yang namanya diawali dengan huruf S dan mengandung huruf lain dalam jumlah berapa pun:

Simbol persen (%) berarti sejumlah karakter. Hasil permintaan:


Nilai yang ditentukan dengan menggunakan predikat IN, OR, BETWEEN, LIKE dapat dibalik dengan menggunakan kata NOT. Maka data yang diminta akan mempunyai arti sebaliknya. Jika kita menggunakan NOT IN (20, 84), maka akan ditampilkan data pegawai yang bekerja di semua departemen kecuali yang bernomor 20 dan 84. Dengan menggunakan NOT BETWEEN 15000 AND 17000 kita dapat memperoleh data pegawai yang gajinya tidak termasuk dalam interval dari 15000 hingga 17000. Kueri dengan NOT LIKE akan mengembalikan data untuk karyawan yang namanya tidak diawali atau tidak mengandung karakter yang ditentukan dengan NOT LIKE.

Tulis kueri SQL dengan SELECT dan predikat IN, NOT IN, BETWEEN, lalu lihat solusinya

Ada database "Teater". Tabel Play berisi data tentang produksi. Tabel tim - tentang peran para aktor. Tabel Aktor berisi tentang aktor. Tabel direktur - tentang direktur. Tabel field, primary key dan Foreign key dapat dilihat pada gambar dibawah ini (klik kiri untuk memperbesar).


Contoh 12. Tampilkan daftar aktor yang belum pernah berperan sebagai pemeran utama. Pada tabel tim, data tentang peran utama terdapat pada kolom tim utama. Jika perannya adalah yang utama, maka “Y” ditandai di baris yang sesuai.

SELECT dan ORDER BY - mengurutkan (mengurutkan) baris

Kueri SQL SELECT yang dibahas sejauh ini mengembalikan baris yang bisa dalam urutan apa pun. Namun, Anda sering kali perlu mengurutkan baris berdasarkan urutan numerik, alfabet, dan kriteria lainnya. Ini dilakukan dengan menggunakan kata kunci ORDER BY. Permintaan tersebut memiliki sintaks berikut:

Contoh 15. Misalkan persyaratannya adalah memilih dari tabel Staf karyawan yang bekerja di departemen nomor 84 dan mengurutkan (mengurutkan) catatan berdasarkan jumlah tahun bekerja dalam urutan menaik:

Kata ASC menunjukkan bahwa urutannya menaik. Kata ini opsional karena urutan menaik adalah defaultnya. Hasil permintaan:


Contoh 16. Misalkan persyaratannya adalah memilih data yang sama seperti pada contoh sebelumnya, tetapi mengurutkan (mengurutkan) catatan berdasarkan jumlah tahun kerja dalam urutan menurun:

Kata DESC menunjukkan bahwa urutannya menurun. Hasil permintaan:


SELECT dan DISTINCT - menghapus baris duplikat

Jika nilai baris tabel tidak disetel ke unik, baris duplikat mungkin muncul di hasil kueri. Seringkali Anda hanya perlu mengeluarkan string unik. Hal ini dilakukan dengan menggunakan ekspresi DISTINCT setelah pernyataan SELECT.

Contoh 17. Misalkan Anda ingin mengetahui departemen apa saja yang ada dan posisi apa saja di antara departemen yang jumlahnya kurang dari 30. Hal ini dapat dilakukan dengan menggunakan query berikut:

Hasil permintaan:


Pernyataan SELECT dalam subkueri SQL

Sejauh ini, kita telah melihat konstruksi SQL dengan pernyataan SELECT, di mana kondisi dimana data dipilih dan data yang dipilih itu sendiri terkandung dalam tabel database yang sama. Dalam prakteknya sering terjadi data yang perlu dipilih terdapat pada satu tabel, dan kondisinya terdapat pada tabel lain. Di sinilah subkueri membantu: nilai kondisi pemilihan dikembalikan dari kueri lain (kueri bersarang), juga dimulai dengan SELECT. Kueri dengan subkueri dapat menghasilkan satu atau lebih baris.

Contoh 18. Semua tabel ORG dan STAFF sama. Misalkan Anda ingin mengetahui di departemen mana karyawan dengan nomor identifikasi 280 itu bekerja, dan di mana departemen tersebut berada. Namun informasi tentang departemen disimpan di tabel ORG, dan informasi tentang karyawan disimpan di tabel STAFF. Hal ini dapat dilakukan dengan menggunakan query berikut dengan subquery di mana SELECT bagian luar mengakses tabel ORG dan SELECT bagian dalam mengakses tabel STAFF:

Hasil permintaan:


Contoh 19. Misalkan sekarang Anda perlu mencari tahu di departemen mana (tanpa duplikasi) karyawan dengan gaji kurang dari 13.000 bekerja. Untuk melakukan ini, di bagian WHERE dari SELECT luar (kueri ke tabel ORG), suatu kondisi ditentukan yang memerlukan rentang nilai (IN), dan SELECT bagian dalam (ke tabel STAFF ) hanya mengembalikan rentang nilai yang diperlukan:

Database Relasional dan Bahasa SQL

Artikel sebelumnya membahas masalah ini. Teknologi untuk membuat struktur tabel database "sql_training_st.mdb" berdasarkan kueri SQL dipertimbangkan. Selain itu, menggunakan kueri SQL, tabel ACCESS DBMS "sql_training_st.mdb" diisi.

Diketahui bahwa dalam database relasional, bahasa SQL dirancang untuk memanipulasi data, menentukan struktur database dan komponennya, mengontrol akses pengguna ke database, dan mengelola transaksi atau mengelola perubahan dalam database.

Bahasa SQL terdiri dari empat kelompok:

  • bahasa manipulasi data DML;
  • Bahasa Definisi Data DDL;
  • DCL bahasa manajemen data;
  • Bahasa kontrol transaksi TCL.

Grup DML mencakup empat tipe utama kueri SQL:

  • INSERT - dirancang untuk menambahkan satu atau lebih catatan ke akhir tabel;
  • PEMBARUAN - dirancang untuk mengubah catatan yang ada di kolom tabel atau mengubah data dalam tabel;
  • DELETE - dirancang untuk menghapus catatan dari tabel;
  • SELECT - dirancang untuk memilih data dari tabel.

Tiga jenis kueri SQL pertama (INSERT, UPDATE, DELETE), yang berhubungan dengan kueri korektif ke database, dibahas di halaman

Pada artikel ini kita akan melihat kueri untuk mengambil data dari tabel database Access.

Untuk mengambil informasi yang disimpan dalam database Access 2003 atau 2007, Anda bisa menggunakan kueri SELECT untuk memilih data dari tabel.

Mari kita buat query SQL berikut (pernyataan SQL) untuk pengambilan sampel; untuk melakukan ini, pilih mode SQL dengan menjalankan perintah View/SQL Mode. Masukkan pernyataan SQL berikut dari keyboard:

PILIH *
DARI Siswa;

Pernyataan ini terdiri dari dua klausa “PILIH*” dan “DARI Siswa”. Klausa pertama berisi pernyataan SELECT dan pengidentifikasi * ("pengidentifikasi *" berarti mencantumkan semua kolom tabel). Klausa kedua berisi pernyataan FROM dan pengenal "Siswa".

FROM - Mendefinisikan tabel Siswa, yang berisi bidang yang ditentukan dalam klausa SELECT. Perlu dicatat bahwa kueri pemilihan selalu berisi dua pernyataan: SELECT dan FROM. Tergantung pada kondisi pemilihan, operator lain mungkin hadir dalam permintaan pemilihan. Gambar 1 menunjukkan tangkapan layar permintaan pengambilan data.


Beras. 1. Kueri SQL SELECT untuk memilih data

Dalam contoh ini, sampel data dihasilkan dari semua kolom tabel Siswa.

Simpan permintaan dengan nama "Students-query1". Sebagai hasil dari menjalankan perintah “Simpan”, objek “Permintaan: Permintaan Siswa1” akan muncul di “Area Navigasi”.

Setelah menyimpan permintaan pemilihan, Anda harus menjalankan permintaan ini dengan mengklik ikon “Jalankan”. Hasil dari perintah “Run” ditunjukkan pada Gambar. 2.



Beras. 2. Memilih data dari seluruh kolom tabel Siswa

Kerja Praktek No.9

Topik pelajaran: Membuat kueri SQL.

Tujuan pelajaran: Pelajari cara menggunakan bahasa SQL untuk membuat kueri.

Rencana belajar :

1. Membuat query SQL untuk seleksi.

2. Membuat query SQL untuk seleksi dengan kondisi seleksi.

3. Membuat query SQL dengan perhitungan.

4. Membuat query SQL untuk pengelompokan.

SQL ( Tersusun Pertanyaan Bahasa) – bahasa kueri terstruktur yang menyediakan alat untuk membuat dan memproses data dalam database.

Untuk membuat kueri menggunakan alat bahasa SQL, Anda harus melakukan langkah-langkah berikut:

    Buat kueri menggunakan konstruktor.

· Di perancang kueri, klik kanan di area tampilan tabel dan pilih "Mode SQL" dari menu konteks.

1. PenciptaanKueri pemilihan SQL.

Mari buat kueri sederhana untuk memilih produk dan memesan produk ini menggunakan SQL.

· Buka Editor Kueri SQL.

· Di jendela editor, masukkan prosedur permintaan berikut

PILIH Pesanan.[Kode pesanan], Produk.[Nama produk], Pesanan. Kuantitas, Produk. Harga, Produk.[Unit], Pesanan.[Tanggal Pemesanan]

DARI Produk INNER JOIN Pesanan PADA Produk.[Kode Produk] = Pesanan. Produk;

· Simpan kueri sebagai pengambilan SQL.

· Periksa apakah permintaan berfungsi dengan benar.

Mari kita lihat sintaks operasi ini:

SELECT adalah pernyataan yang memberitahu database bahwa operasi ini adalah query (hampir semua query dimulai dengan kata ini). Setelah pernyataan SELECT, daftar bidang yang akan dimasukkan dalam kueri biasanya dimulai. Misalnya, catatan SELECT Orders.[Order code] berarti bahwa bidang tersebut akan disertakan dalam permintaan Kode pemesanan dari tabel "Pesanan". Jika nama bidang mengandung spasi, maka harus ditunjukkan dalam tanda kurung siku.

DARI – operator yang bertanggung jawab atas sumber data. Jika Anda perlu menentukan hubungan antar tabel, Anda perlu menggunakan operator INNER JOIN.

INNER JOIN - Menggabungkan catatan dari dua tabel jika bidang penghubung tabel ini berisi nilai yang sama. Misalnya, catatan “DARI Produk INNER JOIN Pesanan PADA Produk.[Kode Produk] = Pesanan. Produk" berarti bahwa dalam prosedur permintaan ini bidangnya Kode Produk Dari tabel "Produk" adalah sumber rekaman untuk bidang tersebut Produk Tabel "Pesanan".

Latihan: Buat kueri SQL yang memungkinkan Anda menampilkan informasi tentang pelanggan yang membeli suatu produk.

2. Membuat kueri SQL untuk seleksi dengan kondisi pemilihan.

Dengan menggunakan bahasa SQL, kita akan membuat query yang memungkinkan kita menampilkan informasi tentang karyawan yang menjual barang dalam jumlah lebih dari 3.

Untuk membuat kueri dengan kondisi pemilihan, gunakan klausa WHERE.

· Buat kueri pemilihan SQL yang berisi bidang berikut: Nama lengkap Karyawan, Kode pemesanan Yang mana yang harus dilayani, Kuantitas. Periksa apakah itu berfungsi dengan benar.

· Sekarang Anda perlu menambahkan kondisi pemilihan. Buka editor SQL dan tambahkan “WHERE (((Orders. Quantity)>3))” di akhir prosedur kueri.

· Simpan query dengan nama “Sampling dengan kondisi pemilihan SQL”. Periksa permintaannya.

Latihan: Buat kueri SQL yang memilih semua produk yang harganya belum dihentikan dan harganya tidak melebihi 20 unit moneter.

3. Membuat kueri SQL dengan perhitungan.

Mari buat kueri SQL yang memungkinkan Anda menampilkan nama belakang pelanggan, nama produk, jumlah pesanan (harga*kuantitas).

Prosedur permintaannya terlihat seperti ini:

PILIH Klien. Nama belakang, Produk.[Nama produk], Pesanan! Kuantitas*Produk! Harga SEBAGAI [Jumlah Pesanan]

FROM Products INNER JOIN (Pelanggan INNER JOIN Pesanan ON Pelanggan.[Kode Pelanggan]=Pesanan. Pelanggan) ON Produk.[Kode Produk]=Pesanan. Produk;

4. Membuat kueri SQL untuk pengelompokan.

Mari buat kueri yang memungkinkan kita menentukan jumlah total barang yang dipesan oleh setiap klien.

Operator GROUP BY digunakan untuk mengelompokkan record.

Prosedur permintaannya adalah sebagai berikut:

PILIH Klien. Nama Belakang, Jumlah(Pesanan! Jumlah*Produk! Harga) SEBAGAI [Jumlah Pesanan]

DARI Produk INNER JOIN (Pelanggan INNER JOIN Pesanan PADA Pelanggan.[Kode Pelanggan] = Pesanan. Pelanggan) PADA Produk.[Kode Produk] = Pesanan. Produk

KELOMPOK OLEH Klien. Nama belakang;

Pertanyaan kontrol:

1. Apa itu SQL?

2. Bagaimana cara membuat kueri SQL?

3. Komponen struktural bahasa SQL.

4. Sebutkan operator utama bahasa SQL.

5. Informasi umum tentang operator SELECT, WHERE, FROM, INNER JOIN, GROUP BY.

Tugas bagi yang berprestasi: Cobalah untuk membuat kueri SQL sendiri yang memungkinkan Anda menghapus semua catatan dari tabel “Produk” yang harganya kurang dari 3 unit moneter

Kesimpulan: Selama pekerjaan ini, cara dan metode utama membuat kueri SQL dipelajari. Komponen struktural bahasa query diperiksa, dan sintaks untuk menggunakan operator dijelaskan.

Apakah Anda baru mengenal pemrograman atau pernah menghindari belajar SQL di masa lalu? Maka Anda datang ke alamat yang benar, karena pengembang mana pun pada akhirnya dihadapkan pada kebutuhan untuk mengetahui bahasa kueri ini. Anda mungkin bukan perancang basis data utama, namun hampir mustahil untuk menghindari bekerja dengan mereka. Saya harap ikhtisar singkat tentang sintaks kueri SQL dasar ini akan membantu pengembang yang tertarik dan siapa pun yang membutuhkannya.

Apa itu basis data SQL?

Structured Query Language adalah standar komunikasi database yang didukung oleh ANSI. Versi terbaru adalah SQL-99, meskipun standar baru, SQL-200n, sedang dalam pengembangan. Sebagian besar database mematuhi standar ANSI-92. Ada banyak diskusi tentang pengenalan standar yang lebih modern, namun vendor database komersial beralih dari ini dengan mengembangkan konsep baru mereka sendiri untuk menyimpan data yang disimpan. Hampir setiap database menggunakan serangkaian sintaks unik, meskipun sangat mirip dengan standar ANSI. Dalam kebanyakan kasus, sintaksis ini merupakan perpanjangan dari standar dasar, meskipun ada kasus di mana sintaksis ini menghasilkan hasil yang berbeda untuk database yang berbeda. Itu selalu merupakan ide bagus untuk meninjau dokumentasi database, terutama jika Anda mendapatkan hasil yang tidak diharapkan.

Jika Anda baru mengenal SQL, ada beberapa konsep dasar yang perlu Anda pahami.

Secara umum, "database SQL" adalah nama umum untuk sistem manajemen basis data relasional (RDBMS). Untuk beberapa sistem, "database" juga mengacu pada sekelompok tabel, data, atau informasi konfigurasi yang merupakan bagian yang terpisah dari konstruksi serupa lainnya. Dalam hal ini, setiap instalasi database SQL dapat terdiri dari beberapa database. Di sistem lain, mereka disebut sebagai tabel.

Tabel adalah struktur database yang terdiri dari kolom-kolom yang berisi baris-baris data. Biasanya, tabel dibuat untuk memuat informasi terkait. Beberapa tabel dapat dibuat dalam database yang sama.

Setiap kolom mewakili atribut atau kumpulan atribut objek, seperti nomor identifikasi karyawan, tinggi badan, warna mobil, dll. Seringkali istilah field digunakan untuk merujuk pada kolom, diikuti dengan nama, seperti “di kolom Nama”. Bidang baris adalah elemen minimum tabel. Setiap kolom dalam tabel memiliki nama, tipe data, dan ukuran tertentu. Nama kolom harus unik di dalam tabel.

Setiap baris (atau catatan) mewakili kumpulan atribut suatu objek tertentu, misalnya, satu baris dapat berisi nomor identifikasi karyawan, gajinya, tahun lahirnya, dll. Baris tabel tidak memiliki nama. Untuk mengakses baris tertentu, pengguna harus menentukan beberapa atribut (atau kumpulan atribut) yang secara unik mengidentifikasinya.

Salah satu operasi terpenting yang dilakukan saat bekerja dengan data adalah mengambil informasi yang disimpan dalam database. Untuk melakukan ini, pengguna harus menjalankan kueri.

Sekarang mari kita lihat tipe utama query database yang fokus pada manipulasi data dalam database. Untuk tujuan kami, semua contoh disediakan dalam SQL standar untuk disesuaikan dengan lingkungan apa pun.

Jenis Kueri Data

Ada empat tipe utama kueri data dalam SQL, yang termasuk dalam apa yang disebut Bahasa Manipulasi Data (DML):
SELECT – memilih baris dari tabel;
INSERT – menambahkan baris ke tabel;
PEMBARUAN – mengubah baris dalam tabel;
DELETE – menghapus baris dalam tabel;

Masing-masing kueri ini memiliki operator dan fungsi berbeda yang digunakan untuk melakukan beberapa tindakan pada data. Kueri SELECT memiliki jumlah opsi terbanyak. Ada juga tipe kueri tambahan yang digunakan bersama dengan SELECT, seperti JOIN dan UNION. Namun untuk saat ini, kami hanya akan fokus pada pertanyaan dasar.

Menggunakan kueri SELECT untuk memilih data yang Anda inginkan

Untuk mengambil informasi yang disimpan dalam database, query SELECT digunakan. Efek dasar kueri ini terbatas pada satu tabel, meskipun ada desain yang memungkinkan Anda memilih dari beberapa tabel secara bersamaan. Untuk mendapatkan semua baris data untuk kolom tertentu, kueri seperti ini digunakan:
PILIH kolom1, kolom2 DARI nama_tabel;

Anda juga bisa mendapatkan semua kolom dari tabel menggunakan karakter wildcard "*":
PILIH * DARI nama_tabel;

Ini bisa berguna ketika Anda akan memilih data dengan klausa WHERE tertentu. Kueri berikut akan mengembalikan semua kolom dari semua baris di mana "kolom1" berisi nilai "3":
PILIH * DARI nama_tabel DI MANA kolom1=3;

Selain “=” (sama dengan), ada operator kondisional berikut:

Pernyataan bersyarat:
= Sama
<>Tidak sama
> Lebih lanjut
< Меньше
>= Lebih besar dari atau sama dengan
<= Меньше или равно

Selain itu, Anda dapat menggunakan kondisi BITWEEN dan LIKE untuk membandingkan dengan kondisi WHERE, serta kombinasi operator AND dan OR.
PILIH * DARI nama_tabel DI MANA ((Umur >= 18) DAN (Nama Belakang ANTARA 'Ivanov' DAN 'Sidorov')) ATAU Perusahaan SEPERTI '%Motorola%';

Apa artinya dalam terjemahan bahasa Rusia: pilih semua kolom dari tabel nama_tabel, di mana nilai kolom usia lebih besar dari atau sama dengan 18, dan nilai kolom Nama Belakang berada dalam rentang abjad dari Ivanov hingga Sidorov inklusif, atau nilainya kolom Perusahaan adalah Motorola.

Menggunakan kueri INSERT untuk memasukkan data baru

Kueri INSERT digunakan untuk membuat baris data baru. Untuk memperbarui data yang ada atau kolom baris kosong, Anda harus menggunakan kueri UPDATE.

Contoh sintaks kueri INSERT:
INSERT INTO table_name (kolom1, kolom2, kolom3) VALUES('data1', 'data2', 'data3');

Jika Anda akan memasukkan semua nilai sesuai urutan kemunculan kolom tabel, Anda dapat menghilangkan nama kolom, meskipun ini lebih disukai agar mudah dibaca. Selain itu, jika Anda membuat daftar kolom, Anda tidak perlu mencantumkannya sesuai urutan kemunculannya di database, selama nilai yang Anda masukkan cocok dengan urutan tersebut. Anda tidak boleh mencantumkan kolom yang tidak berisi informasi.

Informasi yang sudah ada di database diubah dengan cara yang sangat mirip.

PERBARUI Kueri dan Kondisi WHERE

UPDATE digunakan untuk mengubah nilai yang ada atau mengosongkan suatu field dalam satu baris, sehingga nilai baru harus sesuai dengan tipe data yang ada dan memberikan nilai yang dapat diterima. Jika Anda tidak ingin mengubah nilai di semua baris, maka Anda perlu menggunakan klausa WHERE.
UPDATE nama_tabel SET kolom1 = 'data1', kolom2 = 'data2' WHERE kolom3 = 'data3';

Anda dapat menggunakan WHERE pada kolom mana pun, termasuk kolom yang ingin Anda ubah. Ini digunakan ketika diperlukan untuk mengganti satu nilai tertentu dengan nilai lainnya.
UPDATE table_name SET FirstName = 'Vasily' WHERE FirstName = 'Vasily' AND LastName = 'Pupkin';

Hati-hati! Kueri DELETE menghapus seluruh baris

Kueri DELETE menghapus seluruh baris dari database. Jika Anda ingin menghapus satu bidang, maka Anda perlu menggunakan permintaan UPDATE dan mengatur bidang ini ke nilai yang akan dianalogikan dengan NULL dalam program Anda. Berhati-hatilah untuk membatasi kueri DELETE Anda pada klausa WHERE, jika tidak, Anda mungkin kehilangan seluruh isi tabel.
HAPUS DARI nama_tabel WHERE kolom1 = 'data1';

Setelah sebuah baris dihapus dari database Anda, baris tersebut tidak dapat dipulihkan, jadi disarankan untuk memiliki kolom bernama "IsActive", atau semacamnya, yang dapat Anda ubah menjadi null, yang akan menunjukkan bahwa tampilan data dari baris itu terkunci.

Sekarang Anda mengetahui dasar-dasar kueri SQL

SQL adalah bahasa database dan kami telah membahas perintah paling penting dan dasar yang digunakan dalam kueri data. Ada banyak konsep inti yang tidak tercakup (SUM dan COUNT, misalnya), namun beberapa perintah yang berhasil kami cantumkan di atas akan mendorong Anda untuk aktif dan menggali lebih dalam bahasa kueri luar biasa yang disebut SQL.