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

Bagaimana Group_Concat() Bekerja di SQLite

SQLite memiliki group_concat() fungsi yang memungkinkan Anda untuk menggabungkan beberapa hasil yang dikembalikan untuk kolom menjadi satu.

Ini terkadang disebut sebagai “agregasi string”.

Misalnya, saat membuat kueri database, alih-alih memiliki output nilai setiap kolom di baris baru, Anda dapat menggunakan group_concat() untuk membuatnya keluar sebagai daftar yang dipisahkan koma.

Sintaks

Anda dapat menggunakan fungsi ini dengan salah satu cara berikut:

group_concat(X)
group_concat(X,Y)

Dengan kata lain, group_concat() fungsi dapat digunakan dengan satu atau dua argumen.

Argumen kedua menentukan karakter untuk digunakan sebagai pemisah. Jika Anda tidak menentukan ini, maka koma (, ) akan digunakan sebagai pemisah.

Contoh dengan Satu Argumen

Berikut ini contoh pemanggilan group_concat() dengan satu argumen.

SELECT group_concat(FirstName)
FROM Employee;

Hasil:

Andrew,Nancy,Jane,Margaret,Steve,Michael,Robert,Laura

Jika saya tidak menggunakan group_concat() untuk menggabungkan kolom ini, hasilnya akan terlihat seperti ini:

SELECT FirstName
FROM Employee;

Hasil:

Andrew    
Nancy     
Jane      
Margaret  
Steve     
Michael   
Robert    
Laura    

Gunakan Pemisah Khusus

Seperti yang disebutkan, Anda memiliki opsi untuk menentukan karakter mana yang akan digunakan sebagai pemisah.

Berikut adalah contoh menentukan simbol pipa (| ) sebagai pemisah.

SELECT group_concat(FirstName, '|')
FROM Employee;

Hasil:

Andrew|Nancy|Jane|Margaret|Steve|Michael|Robert|Laura

Ini satu lagi yang menggunakan koma, tetapi juga menambahkan spasi di sebelah kanan koma.

SELECT group_concat(FirstName, ', ')
FROM Employee;

Hasil:

Andrew, Nancy, Jane, Margaret, Steve, Michael, Robert, Laura

Kelompokkan Hasil

Anda dapat mengembalikan beberapa kolom dan menggunakan GROUP BY klausa untuk mengelompokkannya dengan tepat.

Ini contohnya.

SELECT ArtistId, group_concat(AlbumName) 
FROM Albums 
GROUP BY ArtistId LIMIT 10;

Hasil:

ArtistId  group_concat(AlbumName)                                                   
--------  --------------------------------------------------------------------------
1         Powerslave,Somewhere in Time,Piece of Mind,Killers,No Prayer for the Dying
2         Powerage                                                                  
3         All Night Wrong,The Sixteen Men of Tain                                   
4         Big Swing Face                                                            
5         Ziltoid the Omniscient,Casualties of Cool,Epicloud                        
6         Singing Down the Lane                                                     
7         Long Lost Suitcase,Praise and Blame,Along Came Jones                      
9         No Sound Without Silence                                                  
12        Blue Night,Eternity,Scandinavia                                           

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Izin Pengguna SQLite

  2. mengapa saya gagal membuat tabel ini di Android SQLite?

  3. Mendapatkan NoClassDefFoundError saat mencoba menggunakan Proguard dan SQLcipher di Android

  4. Bagaimana cara membuat tabel menggunakan database sqlite di android?

  5. gabung di dua kolom tabel yang berbeda sqlite3