Mengedit pernyataan SQL untuk mempertajam hasil kueri

Mengedit pernyataan SQL untuk mempertajam hasil kueri

Jika kueri Anda tidak berfungsi cukup keras, menambahkan beberapa laporan SQL dasar dapat membantu memfokuskan hasil Anda. Mari kita lihat beberapa tipe pernyataan SQL dan klausul atau bagian yang mungkin Anda edit untuk mendapatkan hasil yang Anda inginkan.

Catatan:  Artikel ini tidak berlaku untuk Access web app, jenis database yang didesain dengan Access dan diterbitkan secara online.

Di artikel ini

Membuat pernyataan SELECT

Pernyataan SQL Select memiliki dua atau tiga klausa. Klausa SELECT memberi tahu database tempat untuk mencari data dan memintanya untuk mengembalikan hasil tertentu.

Catatan:  Pilih pernyataan selalu diakhiri dengan titik koma (;) baik di akhir klausul terakhir atau pada baris dengan sendirinya di akhir pernyataan SQL.

Pernyataan SELECT berikut meminta Access untuk mendapatkan informasi dari alamat email dan kolom perusahaan, dari tabel kontak, khususnya tempat ia menemukan "Seattle" di kolom kota.

Tab objek SQL yang memperlihatkan pernyataan SELECT

Kueri di atas memiliki tiga klausa SELECT, FROM, dan WHERE.

1. klausa SELECT mencantumkan kolom yang berisi data yang ingin Anda gunakan dan operator (SELECT) yang diikuti oleh dua pengidentifikasi (alamat email dan perusahaan). Jika pengidentifikasi memiliki spasi atau karakter khusus (seperti "alamat email"), sertakan pengidentifikasi dalam tanda kurung siku.

2. klausa FROM mengidentifikasi tabel sumber. Dalam contoh ini, memiliki operator (dari) diikuti dengan pengidentifikasi (kontak).

3. klausul WHERE adalah klausul opsional. Contoh ini memiliki operator (di mana) diikuti dengan ekspresi (kota = "Seattle").

Untuk informasi selengkapnya tentang kueri pemilihan, lihat, membuat kueri pemilihan sederhana.

Berikut ini adalah daftar klausul SQL umum:

Klausul SQL

Fungsinya

Diperlukan ?

SELECT

Mencantumkan bidang yang berisi data yang diminati.

Ya

FROM

Mencantumkan tabel yang berisi bidang yang tercantum dalam klausa SELECT.

Ya

WHERE

Menentukan kriteria bidang yang harus dipenuhi oleh setiap catatan yang akan disertakan dalam hasil.

Tidak

MENGURUTKAN MENURUT

Menentukan cara mengurutkan hasil.

Tidak

GROUP BY

Dalam pernyataan SQL yang berisi fungsi agregat, daftar bidang yang tidak diringkas dalam klausa SELECT.

Hanya jika ada bidang tersebut

HAVING

Dalam pernyataan SQL yang berisi fungsi agregat, menentukan kondisi yang berlaku untuk bidang yang diringkas dalam pernyataan SELECT.

Tidak

Setiap klausul SQL terdiri dari istilah. Berikut ini adalah daftar beberapa istilah SQL umum.

Istilah SQL

Definisi

Contoh

Analisa

Nama yang Anda gunakan untuk mengidentifikasi objek database, seperti nama kolom.

[Alamat email] dan perusahaan

operator

Kata kunci yang mewakili tindakan atau mengubah tindakan.

AS

konstanta

Nilai yang tidak berubah, seperti angka atau NULL.

42

ekspresi

Kombinasi pengidentifikasi, operator, konstanta, dan fungsi yang mengevaluasi ke nilai tunggal.

>= Products. [Harga satuan]

Atas Halaman

Mengustomisasi klausa SELECT

Menyesuaikan

Contoh

Untuk melihat nilai yang berbeda saja.

Gunakan kata kunci yang berbeda di klausa SELECT Anda.

Misalnya, jika pelanggan Anda berasal dari beberapa kantor cabang yang berbeda dan beberapa memiliki nomor telepon yang sama dan Anda hanya ingin melihat nomor telepon yang tercantum satu kali, klausul SELECT Anda akan seperti ini:

SELECT DISTINCT [txtCustomerPhone] 

Untuk mengubah cara pengidentifikasi muncul dalam tampilan lembar data untuk menyempurnakan keterbacaan.

Gunakan operator AS (kata kunci yang mewakili tindakan atau mengubah tindakan) dengan alias bidang di klausa SELECT Anda. Alias bidang adalah nama yang Anda tetapkan ke bidang untuk membuat hasil lebih mudah dibaca.

SELECT [txtCustPhone] AS [Customer Phone]

Mengustomisasi klausa FROM

Menyesuaikan

Contoh

Anda bisa menggunakan alias tabel atau nama lain yang Anda tetapkan ke tabel dalam pernyataan SELECT. Alias tabel berguna jika nama tabel panjang, terutama saat Anda memiliki beberapa bidang yang memiliki nama yang sama dari tabel yang berbeda.

Untuk memilih data dari dua bidang, keduanya bernama ID, salah satunya berasal dari tabel tblCustomer dan yang lainnya dari tabel tblOrder:

SELECT [tblCustomer].[ID], 
[tblOrder].[ID]

Gunakan operator AS untuk menentukan alias tabel dalam klausa FROM:

FROM [tblCustomer] AS [C], 
[tblOrder] AS [O]

Anda bisa menggunakan alias tabel ini di klausa SELECT Anda, sebagai berikut:

SELECT [C].[ID], 
[O].[ID]

Gunakan gabungan untuk menggabungkan sepasang catatan dari dua sumber data ke dalam satu hasil atau untuk menentukan apakah akan menyertakan catatan dari tabel baik jika tidak ada rekaman yang sesuai dalam tabel terkait.

Bergabung dalam tabel sehingga kueri menggabungkan item dari tabel, dan mengecualikan item jika tidak ada rekaman yang sesuai dalam tabel lain

Berikut ini yang mungkin terlihat sebagai klausa FROM:

FROM [tblCustomer] 
INNER JOIN [tblOrder]
ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

Tentang penggunaan gabungan

Ada dua tipe penggabungan, gabungan dalam dan luar. Gabungan dalam lebih umum dalam kueri. Saat Anda menjalankan kueri dengan gabungan dalam, hasilnya hanya memperlihatkan item di mana nilai yang sama ada di kedua tabel yang digabungkan.

Gabungan luar menentukan apakah akan menyertakan data di mana tidak ada nilai umum. Gabungan luar bersifat directional, artinya Anda bisa menentukan apakah akan menyertakan semua rekaman dari tabel pertama yang ditentukan dalam gabungan (disebut gabungan kiri), atau untuk menyertakan semua rekaman dari tabel kedua dalam gabungan (disebut Gabung kanan). Gabungan luar memiliki sintaks SQL berikut:

FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1 = table2.field2

Lihat informasi selengkapnya tentang menggunakan gabungan dalam kueri dalam tabel bergabung dan kueri.

Atas Halaman

Mengkustomisasi klausul WHERE

Klausa WHERE menyertakan kriteria yang membantu membatasi jumlah item yang dihasilkan dalam kueri. Lihat contoh kriteria kueri dan cara kerjanya.

Contoh cara mengustomisasi klausa WHERE dasar adalah membatasi hasil kueri; Misalkan Anda ingin menemukan nomor telepon pelanggan, dan hanya dapat mengingat nama belakangnya sebagai Bagel. Dalam contoh ini, nama terakhir disimpan dalam bidang LastName, sehingga sintaks SQL adalah:

WHERE [LastName]='Bagel'

Gunakan klausa WHERE juga untuk menggabungkan sumber data untuk kolom yang memiliki data yang cocok, tapi tipe data yang berbeda. Ini sangat berguna karena Anda tidak dapat membuat gabungan antara bidang yang memiliki tipe data yang berbeda. Gunakan satu bidang sebagai kriteria untuk bidang lainnya, dengan kata kunci like . Misalnya, jika Anda ingin menggunakan data dari tabel aset dan karyawan, hanya ketika tipe aset dalam bidang tipe aset dari tabel aset memiliki angka 3 dalam bidang kuantitas dari tabel karyawan, berikut ini cara klausa WHERE Anda akan terlihat:

WHERE field1 LIKE field2

Penting:  Anda tidak bisa menentukan kriteria untuk bidang yang digunakan dengan fungsi agregat dalam klausul WHERE. Sebagai gantinya, gunakan klausul HAVING untuk menentukan kriteria bagi bidang agregat.

Atas Halaman

Mengkustomisasi dengan operator UNION

Gunakan operator UNION saat Anda ingin melihat tampilan gabungan hasil dari beberapa kueri pemilihan yang serupa. Misalnya, jika database Anda memiliki tabel produk dan tabel layanan dan keduanya memiliki tiga bidang: penawaran eksklusif atau produk atau layanan, harga, garansi atau garansi. Meskipun tabel produk menyimpan informasi garansi, dan tabel Layanan menyimpan informasi, informasi dasarnya sama. Anda bisa menggunakan kueri gabungan untuk menggabungkan tiga bidang dari dua tabel seperti ini:

SELECT name, price, warranty, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee, exclusive_offer
FROM Services;

Saat Anda menjalankan kueri, data dari setiap kumpulan bidang terkait digabungkan menjadi satu bidang output. Untuk menyertakan baris duplikat apa pun di hasil, gunakan semua operator.

Catatan:  Pernyataan SELECT harus memiliki jumlah bidang output yang sama, dalam urutan yang sama, dan dengan tipe data yang sama atau kompatibel. Untuk tujuan kueri gabungan, tipe data angka dan teks kompatibel.

Untuk informasi selengkapnya tentang kueri gabungan, lihat menggunakan kueri gabungan untuk menampilkan hasil gabungan dari beberapa kueri.

Atas Halaman

Perlu bantuan lainnya?

Kembangkan keterampilan Office Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×