SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

SQLite Dimana

Ringkasan :dalam tutorial ini, Anda akan mempelajari cara menggunakan SQLite WHERE klausa untuk menentukan kondisi pencarian untuk baris yang dikembalikan oleh kueri.

Pengantar SQLite WHERE klausa

WHERE klausa adalah klausa opsional dari SELECT penyataan. Itu muncul setelah FROM klausa seperti pernyataan berikut:

SELECT
	column_list
FROM
	table
WHERE
	search_condition;Code language: SQL (Structured Query Language) (sql)

Dalam contoh ini, Anda menambahkan WHERE klausa ke SELECT pernyataan untuk memfilter baris yang dikembalikan oleh kueri. Saat mengevaluasi SELECT pernyataan dengan WHERE klausa, SQLite menggunakan langkah-langkah berikut:

  1. Pertama, periksa tabel di FROM klausa.
  2. Kedua, evaluasi kondisi di WHERE klausa untuk mendapatkan baris yang memenuhi ketentuan ini.
  3. Ketiga, buat hasil akhir yang ditetapkan berdasarkan baris pada langkah sebelumnya dengan kolom di SELECT klausa.

Kondisi pencarian di WHERE memiliki bentuk sebagai berikut:

left_expression COMPARISON_OPERATOR right_expressionCode language: SQL (Structured Query Language) (sql)

Misalnya, Anda dapat membentuk kondisi pencarian sebagai berikut:

WHERE column_1 = 100;

WHERE column_2 IN (1,2,3);

WHERE column_3 LIKE 'An%';

WHERE column_4 BETWEEN 10 AND 20;Code language: SQL (Structured Query Language) (sql)

Selain SELECT pernyataan, Anda dapat menggunakan WHERE klausa dalam UPDATE dan DELETE pernyataan.

Operator perbandingan SQLite

Operator perbandingan menguji apakah dua ekspresi sama. Tabel berikut mengilustrasikan operator perbandingan yang dapat Anda gunakan untuk membuat ekspresi:

Operator Artinya
= sama dengan
<> atau != Tidak sama dengan
Kurang dari
> Lebih besar dari
<= Kurang dari atau sama dengan
>= Lebih besar dari atau sama dengan

Operator logika SQLite

Operator logika memungkinkan Anda menguji kebenaran beberapa ekspresi. Operator logika mengembalikan 1, 0, atau nilai NULL.

Perhatikan bahwa SQLite tidak menyediakan tipe data Boolean oleh karena itu 1 berarti TRUE, dan 0 berarti FALSE.

Tabel berikut mengilustrasikan operator logika SQLite:

Operator Artinya
SEMUA mengembalikan 1 jika semua ekspresi adalah 1.
DAN mengembalikan 1 jika kedua ekspresi adalah 1, dan 0 jika salah satu ekspresi adalah 0.
APA SAJA mengembalikan 1 jika salah satu dari kumpulan perbandingan adalah 1.
ANTARA mengembalikan 1 jika nilai berada dalam rentang.
ADA mengembalikan 1 jika subkueri berisi baris apa pun.
IN mengembalikan 1 jika nilai ada dalam daftar nilai.
SUKA mengembalikan 1 jika nilai cocok dengan pola
TIDAK membalikkan nilai operator lain seperti NOT EXISTS, NOT IN, NOT BETWEEN, dll.
ATAU mengembalikan nilai true jika salah satu ekspresi adalah 1

SQLite WHERE contoh klausa

Kami akan menggunakan tracks tabel di database sampel untuk menggambarkan cara menggunakan WHERE klausa.

Operator kesetaraan (= ) adalah operator yang paling umum digunakan. Misalnya, kueri berikut menggunakan WHERE klausa operator kesetaraan untuk menemukan semua trek di id album 1:

SELECT
   name,
   milliseconds,
   bytes,
   albumid
FROM
   tracks
WHERE
   albumid = 1;Code language: SQL (Structured Query Language) (sql)

Cobalah

SQLite membandingkan nilai yang disimpan di AlbumId kolom dengan nilai literal 1 untuk menguji apakah mereka sama. Hanya baris yang memenuhi kondisi yang dikembalikan.

Saat Anda membandingkan dua nilai, Anda harus memastikan bahwa keduanya adalah tipe data yang sama. Anda harus membandingkan angka dengan angka, string dengan string, dll.

Jika Anda membandingkan nilai dalam tipe data yang berbeda misalnya, string dengan angka, SQLite harus melakukan konversi tipe data implisit, tetapi secara umum, Anda harus menghindari melakukan hal ini.

Anda menggunakan operator logika untuk menggabungkan ekspresi. Misalnya, untuk mendapatkan trek dari album 1 yang memiliki panjang lebih dari 200.000 milidetik, Anda menggunakan pernyataan berikut:

SELECT
	name,
	milliseconds,
	bytes,
	albumid
FROM
	tracks
WHERE
	albumid = 1
AND milliseconds > 250000;Code language: SQL (Structured Query Language) (sql)

Cobalah

Pernyataan tersebut menggunakan dua ekspresi albumid = 1 dan milliseconds > 250000 . Ini menggunakan AND operator logika untuk menggabungkan ekspresi ini.


SQLite WHERE klausa dengan LIKE contoh operator

Terkadang, Anda mungkin tidak ingat persis data yang ingin Anda cari. Dalam hal ini, Anda melakukan pencarian yang tidak tepat menggunakan LIKE operator.

Misalnya, untuk menemukan trek mana yang dibuat oleh Smith, Anda menggunakan LIKE operator sebagai berikut:

SELECT
	name,
	albumid,
	composer
FROM
	tracks
WHERE
	composer LIKE '%Smith%'
ORDER BY
	albumid;Code language: SQL (Structured Query Language) (sql)

Cobalah

Anda mendapatkan trek yang disusun oleh R.A. Smith-Diesel, Adrian Smith, dll.

SQLite WHERE klausa dengan IN contoh operator

IN operator memungkinkan Anda untuk memeriksa apakah suatu nilai ada dalam daftar daftar nilai yang dipisahkan koma. Misalnya, untuk menemukan trek yang memiliki id jenis media 2 atau 3, gunakan IN operator seperti yang ditunjukkan pada pernyataan berikut:

SELECT
	name,
	albumid,
	mediatypeid
FROM
	tracks
WHERE
	mediatypeid IN (2, 3);Code language: SQL (Structured Query Language) (sql)

Cobalah

Dalam tutorial ini, Anda telah mempelajari cara menggunakan SQLite WHERE klausa untuk memfilter baris dalam kumpulan hasil akhir menggunakan operator perbandingan dan logika.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 Cara Mengembalikan Hari Julian di SQLite

  2. Bagaimana Fungsi JulianDay() Bekerja di SQLite

  3. Urutan SQLite Berdasarkan Tanggal1530019888000

  4. Android sqlite, batasi jumlah baris dalam database

  5. Posting cepat tentang SQLite UPSERT dan klausa RETURNING baru.