У меня есть 4 столбца, которые мне нужно получить с помощью Go.Когда я запускаю запрос в MySQL, я получаю все 4 столбца, но когда я пытаюсь сделать это с помощью Go, я получаю только 3 столбца.Код Go:
type song struct {
Id int
Artist string
Picture string
Name string
}
type data struct {
Songs []song
}
db, err := sql.Open(sqlServer, sqlData)
checkErr(err)
rows, err := db.Query("SELECT s.id, a.name a_name, al.picture, s.song_name FROM music_songs s JOIN music_albums al ON s.album_id = al.id JOIN music_artists a ON a.id = s.artist_id WHERE s.artist_id = ? ORDER BY s.id ASC, al.id ASC", ar)
checkErr(err)
var songs []song
for rows.Next() {
var id int
var artist string
var picture string
var name string
err = rows.Scan(&id, &artist, &picture, &name)
songs = append(songs, song{id, artist, picture, name})
}
fmt.Println(songs)
Когда я запускаю его с помощью Go, я получаю столбцы: id, исполнитель и изображение.Я не могу получить столбец song_name.
Когда я запускаю его в MySQL, я получаю:
+----+---------+---------+--------------------------+
| id | a_name | picture | song_name |
+----+---------+---------+--------------------------+