La requête renverra une ligne dans le nombre de variables. Donc, la prochaine chose que vous devez faire est de lire cette ligne et d'affecter le résultat dans une nouvelle variable, en utilisant la fonction Scan()
. Voici comment cela fonctionne.
rows, err := db.Query("SELECT COUNT(*) FROM main_table")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
var count int
for rows.Next() {
if err := rows.Scan(&count); err != nil {
log.Fatal(err)
}
}
fmt.Printf("Number of rows are %s\n", count)
La meilleure option serait d'utiliser QueryRow()
car vous vous attendez à lire une seule ligne. Le code sera alors.
var count int
err := db.QueryRow("SELECT COUNT(*) FROM main_table").Scan(&count)
switch {
case err != nil:
log.Fatal(err)
default:
fmt.Printf("Number of rows are %s\n", count)
}