Golang ialah bahasa pengaturcaraan yang pantas dan cekap Kini semakin ramai pengaturcara beralih kepadanya kerana keluk pembelajarannya lebih rata daripada bahasa lain dan prestasi serentaknya sangat cemerlang, yang menjadikannya popular dalam pembangunan web pelbagai aplikasi dalam bidang pembangunan back-end.
Apabila membangunkan aplikasi web, tidak dapat dielakkan untuk melaksanakan operasi pertanyaan pangkalan data, dan pertanyaan bersyarat ialah bahagian yang sangat penting daripadanya. Artikel ini akan memperkenalkan cara menggunakan Golang untuk melaksanakan pertanyaan bersyarat.
Langkah 1: Sambungkan ke pangkalan data
Sebelum melakukan pertanyaan bersyarat, anda perlu menyambung ke pangkalan data terlebih dahulu. Golang mempunyai banyak pemacu pangkalan data sumber terbuka untuk dipilih, seperti Gorm, sqlx dan go-sql-driver Artikel ini menggunakan Gorm sebagai contoh untuk menunjukkan cara melakukan pertanyaan bersyarat.
Menggunakan Gorm untuk menyambung ke pangkalan data memerlukan langkah berikut:
Anda boleh menggunakan baris arahan untuk memasang:
pergi dapatkan -u github.com/jinzhu/gorm
Selepas mengimport pakej Gorm, anda perlu mengimport pakej pemacu pangkalan data , sebagai contoh, import pakej pemacu Mysql:
import (
"github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql"
)
Apabila menyambung kepada pangkalan data, anda perlu memberikan maklumat sambungan pangkalan data, contohnya:
db, err := gorm.Open("mysql", "user:password@tcp(dbhost:port)/dbname?charset =utf8&parseTime=True&loc=Local")
Pernyataan ini akan mencipta DB Objek disambungkan ke pangkalan data, yang merangkumi maklumat seperti nama pengguna, kata laluan, hos pangkalan data dan nombor port, serta maklumat seperti set aksara, format masa dan zon waktu.
Langkah 2: Bina syarat pertanyaan
Selepas menyambung ke pangkalan data, anda perlu membina syarat pertanyaan. Syarat pertanyaan adalah bahagian penting, ia menentukan data yang ingin kita perolehi daripada pangkalan data. Gorm menggunakan kaedah rantaian untuk membina keadaan pertanyaan, dan ia menyediakan beberapa kaedah yang biasa digunakan, seperti Where(), Not(), Or(), dan And(), dsb.
Kaedah Where() digunakan untuk menapis rekod yang memenuhi syarat yang ditetapkan, contohnya:
db.Where(" umur > ?", 18)
Pernyataan ini akan mengembalikan rekod yang umurnya melebihi 18 tahun.
Kaedah Not() digunakan untuk menapis rekod yang tidak memenuhi syarat yang ditetapkan, contohnya:
db. Not("umur > ?", 18)
Pernyataan ini akan mengembalikan rekod yang umurnya kurang daripada atau sama dengan 18.
Kaedah Or() dan kaedah And() digunakan untuk membina keadaan pertanyaan yang kompleks, seperti:
db.Where("umur > ?", 18).Atau("berat > ?", 60)
Pernyataan ini akan mengembalikan rekod dengan umur melebihi 18 tahun atau berat melebihi 60 tahun.
db.Where("age > ?", 18).And("name = ?", "Tom")
Pernyataan ini akan mengembalikan orang yang umurnya melebihi 18 dan yang namanya Tom records.
Selain kaedah di atas, Gorm juga menyediakan beberapa kaedah lain, seperti Find(), First() dan Last(), dsb., yang boleh digunakan untuk mendapatkan data daripada pangkalan data.
Langkah 3: Jalankan pertanyaan
Selepas membina syarat pertanyaan, anda perlu melaksanakan pernyataan pertanyaan untuk mendapatkan data daripada pangkalan data. Kaedah pertanyaan Gorm juga sangat pelbagai Ia menyediakan kaedah seperti Find(), First(), Last(), dan Count() untuk memastikan hasil pertanyaan memenuhi jangkaan.
Kaedah Find() boleh mendapatkan semua rekod yang memenuhi syarat daripada pangkalan data, contohnya:
pengguna var []User
db.Where("age > ?", 18).Find(&users)
Pernyataan ini akan mengembalikan semua maklumat pengguna yang umurnya melebihi 18 tahun dan menyimpannya dalam pembolehubah pengguna .
Kaedah First() dan Kaedah Last() boleh mendapatkan rekod pertama dan terakhir yang memenuhi syarat daripada pangkalan data Rekod, contohnya:
var user User
db.Where("age > ?", 18).First(&user)
Pernyataan ini akan mengembalikan mereka yang berumur lebih besar daripada 18 Maklumat pengguna pertama dan menyimpannya dalam pembolehubah pengguna.
var user User
db.Last(&user)
Pernyataan ini akan mengembalikan maklumat pengguna terakhir dan menyimpannya dalam pembolehubah pengguna.
Kaedah Count() digunakan untuk menanyakan bilangan rekod yang memenuhi syarat yang ditetapkan, contohnya:
var count int
db.Table("users").Where("age > ?", 18).Count(&count)
Pernyataan ini akan mengembalikan bilangan pengguna yang umurnya melebihi 18 dan simpannya dalam pembolehubah kiraan.
Ringkasan
Pertanyaan bersyarat ialah salah satu operasi asas pada pangkalan data, yang membolehkan kami mendapatkan data yang kami perlukan daripada pangkalan data. Pustaka Gorm bahasa Golang menyediakan kaedah pertanyaan yang sangat kaya dan fleksibel, membolehkan kami membina keadaan pertanyaan yang memenuhi keperluan kami dengan mudah Ia juga menyediakan pelbagai operasi pertanyaan (seperti Find(), First(), Last() dan Count(), dsb.) untuk memastikan hasil pertanyaan adalah seperti yang diharapkan.
Atas ialah kandungan terperinci pertanyaan bersyarat golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!