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

SQLite - Pilih Data

Untuk memilih data dari database SQLite, gunakan SELECT pernyataan.

Saat Anda menggunakan pernyataan ini, Anda menentukan tabel mana yang akan dipilih datanya, serta kolom yang akan dikembalikan dari kueri.

Anda juga dapat memberikan kriteria tambahan untuk lebih mempersempit data yang dikembalikan.

Sederhana SELECT Pernyataan

Kami telah menggunakan SELECT pernyataan sebelumnya, saat kita memasukkan data.

Pernyataan yang kami gunakan adalah ini:

SELECT * FROM Artists;

Ini cukup jelas — ia memberi tahu SQLite untuk memilih semua kolom dari Artis meja. Tanda bintang (* ) adalah cara singkat untuk mengatakan "semua kolom". Ini menyelamatkan kita dari menulis nama semua kolom.

Oleh karena itu, kueri ini mengembalikan semua rekaman dan semua kolom. Seperti ini:

1|Joe Satriani
2|Steve Vai
3|The Tea Party
4|Noiseworks
5|Wayne Jury
6|Mr Percival
7|Iron Maiden
8|Atmasphere
9|Ian Moss
10|Magnum
11|Strapping Young Lad
12|Slayer
13|Primus
14|Pat Metheny
15|Frank Gambale
16|Frank Zappa
17|The Wiggles

Memformat

Mari kita format outputnya agar hasil kita sedikit lebih mudah dibaca.

Gunakan Kolom

Anda dapat menggunakan .mode untuk mengubah mode keluaran. Contoh di atas menggunakan .mode list , yang menampilkan hasil sebagai daftar.

Mari kita ubah mode untuk menggunakan kolom.

.mode column

Saat melakukannya, Anda mungkin perlu menyesuaikan lebar kolom (data apa pun yang terlalu lebar untuk kolom akan terpotong).

Sesuaikan Lebar Kolom

Untuk menyesuaikan lebar kolom, gunakan .width perintah, diikuti dengan lebar untuk setiap kolom.

Contoh berikut menyetel kolom pertama ke 12 dan kolom kedua ke 20 .

.width 12 20

Tambahkan Header

Anda juga dapat menggunakan .headers untuk menentukan apakah akan menampilkan tajuk kolom atau tidak.

Untuk menampilkan header, gunakan ini:

.headers on

Anda dapat menghapusnya dengan .headers off .

Tampilkan Setelan

Anda dapat meninjau ini, dan setelan lainnya kapan saja, dengan mengetik .show

sqlite> .show
     echo: off
      eqp: off
  explain: off
  headers: on
     mode: column
nullvalue: ""
   output: stdout
separator: "|"
    stats: off
    width: 12 20 

Format Baru

Berikut adalah tampilan contoh sebelumnya menggunakan mode kolom dan header:

ArtistId    ArtistName  
----------  ------------
1           Joe Satriani
2           Steve Vai   
3           The Tea Part
4           Noiseworks  
5           Wayne Jury  
6           Mr Percival 
7           Iron Maiden 
8           Atmasphere  
9           Ian Moss    
10          Magnum      
11          Strapping Yo
12          Slayer      
13          Primus      
14          Pat Metheny 
15          Frank Gambal
16          Frank Zappa 
17          The Wiggles 

The WHERE Klausa

Anda dapat menggunakan WHERE klausa untuk mempersempit hasil. Klausa tersebut memungkinkan Anda untuk menetapkan kriteria khusus yang akan diterapkan pada kueri.

Misalnya, Anda dapat menentukan bahwa hanya rekaman, di mana bidang tertentu berisi nilai tertentu yang harus dikembalikan.

Berikut adalah contoh yang sangat spesifik. Ini menetapkan bahwa hanya record dengan ArtistId sama dengan 6 harus dikembalikan:

SELECT * FROM Artists
WHERE ArtistId = 6;

Hasil:

ArtistId      ArtistName          
------------  --------------------
6             Mr Percival   

Untuk menemukan semua artis yang namanya dimulai dengan huruf "S", Anda dapat melakukan ini:

SELECT * FROM Artists
WHERE ArtistName LIKE 'S%';

Hasil:

ArtistId      ArtistName          
------------  --------------------
2             Steve Vai           
11            Strapping Young Lad 
12            Slayer     

Tanda persen (% ) adalah karakter wildcard yang dapat digunakan untuk menentukan karakter apa pun. Jadi, dalam contoh ini, kami menetapkan bahwa nama artis harus seperti pola ini (yaitu pola yang dimulai dengan huruf S dan mengikuti dengan karakter lain).

Contoh lain dari penggunaan WHERE klausa adalah untuk mengambil berbagai nilai. Misalnya, kita dapat mencari record yang nilainya lebih kecil dari angka, lebih besar dari angka, atau dalam rentang tertentu.

Berikut adalah contoh memilih hanya rekaman tersebut dengan ArtistId kurang dari angka:

SELECT * FROM Artists
WHERE ArtistId < 6;

Hasil:

ArtistId      ArtistName          
------------  --------------------
1             Joe Satriani        
2             Steve Vai           
3             The Tea Party       
4             Noiseworks          
5             Wayne Jury 

Berikut adalah contoh memilih hanya rekaman tersebut dengan ArtistId dalam rentang tertentu:

SELECT * FROM Artists
WHERE ArtistId BETWEEN 5 AND 10;

Hasil:

ArtistId      ArtistName          
------------  --------------------
5             Wayne Jury          
6             Mr Percival         
7             Iron Maiden         
8             Atmasphere          
9             Ian Moss            
10            Magnum   

Memilih Kolom

Anda dapat menentukan bahwa hanya kolom tertentu yang dikembalikan dalam kumpulan hasil. Cukup tulis nama kolom dalam kueri. Beberapa nama kolom harus dipisahkan dengan koma.

Ini adalah praktik yang baik untuk memilih hanya kolom yang Anda butuhkan. Menggunakan * , meskipun nyaman, dapat menyebabkan overhead tambahan jika mengembalikan lebih banyak kolom daripada yang diperlukan.

Jadi mari kita jalankan kueri yang sama lagi, tetapi kali ini, hanya pilih ArtistName kolom:

SELECT ArtistName FROM Artists
WHERE ArtistId BETWEEN 5 AND 10;

Hasil:

ArtistName  
------------
Wayne Jury  
Mr Percival 
Iron Maiden 
Atmasphere  
Ian Moss    
Magnum 

ORDER BY Klausa

Anda dapat menggunakan ORDER BY klausa untuk membatasi jumlah record yang dikembalikan.

Anda dapat menambahkan ASC untuk urutan menaik, atau DESC untuk urutan menurun. Jika Anda tidak menambahkan apa pun, itu akan menggunakan menaik.

Di sini, kami memesan dengan ArtistName bidang dalam urutan menaik:

SELECT * FROM Artists
ORDER BY ArtistName;

Hasil:

ArtistId      ArtistName          
------------  --------------------
8             Atmasphere          
15            Frank Gambale       
16            Frank Zappa         
9             Ian Moss            
7             Iron Maiden         
1             Joe Satriani        
10            Magnum              
6             Mr Percival         
4             Noiseworks          
14            Pat Metheny         
13            Primus              
12            Slayer              
2             Steve Vai           
11            Strapping Young Lad 
3             The Tea Party       
17            The Wiggles         
5             Wayne Jury  

Dan jika kita beralih ke urutan menurun:

SELECT * FROM Artists
ORDER BY ArtistName DESC;

Hasil:

ArtistId      ArtistName          
------------  --------------------
5             Wayne Jury          
17            The Wiggles         
3             The Tea Party       
11            Strapping Young Lad 
2             Steve Vai           
12            Slayer              
13            Primus              
14            Pat Metheny         
4             Noiseworks          
6             Mr Percival         
10            Magnum              
1             Joe Satriani        
7             Iron Maiden         
9             Ian Moss            
16            Frank Zappa         
15            Frank Gambale       
8             Atmasphere  

LIMIT Klausa

Anda dapat menggunakan LIMIT klausa untuk membatasi jumlah record yang dikembalikan. Ini bisa berguna jika tabel Anda berisi sejumlah besar catatan tetapi Anda hanya ingin melihat segelintir.

Di sini, kami membatasi kumpulan catatan menjadi hanya lima catatan:

SELECT * FROM Artists LIMIT 5;

Hasil:

ArtistId      ArtistName          
------------  --------------------
1             Joe Satriani        
2             Steve Vai           
3             The Tea Party       
4             Noiseworks          
5             Wayne Jury 

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menyimpan dan mengambil array byte (data gambar) ke dan dari database SQLite?

  2. Penyimpanan database SQLite menggunakan Android dan Phonegap

  3. Android:Sisipan Massal, saat InsertHelper tidak digunakan lagi

  4. SQLite Jelaskan Tabel

  5. Bagaimana SQLite Count() Bekerja