GORM prend-il en charge les fonctions IIF utilisant SQL ?
P粉547362845
2023-09-01 16:06:17
<p>J'ai un tableau pour les devoirs, un tableau pour les solutions et un tableau pour les étudiants.
Je souhaite récupérer tous les devoirs et pour chaque devoir, je souhaite ajouter un « drapeau » qui indique si l'étudiant actuellement connecté a tenté le devoir. </p>
<p>J'ai essayé ceci : </p>
<pre class="brush:golang;toolbar:false;">importer (
"fmt"
"gorm.io/gorm"
"encodage/json"
"github.com/my_organisation/myorg-repo/db"
)
base de données var *gorm.DB
var solutions[]db.Solution
var listOfAsnmtIDs []uint
func myfuncn (w http.ResponseWriter, r *http.Request){
//...
_ = base de données.Table("solutions").Où("id_élève = ?",
pupil.ID).Select("assignment_id").Find(&solutions)
pour _, solution := gamme de solutions {
listOfAsnmtIDs = append(listOfAsnmtIDs, solution.AssignmentID)
}
réponse := database.Table("assignments").Select(`id,created_at, IIF((id IN ?), 'tentative', 'Non tenté') comme tenté`, listOfAsnmtIDs).Find(&allAssignments)
si réponse.RowsAffected <
répondToClient(w, 404, nul, "Aucune affectation trouvée")
retour
}
//...
}
</pre></p>
Il vous suffit de lister les paramètres. Similaire à ça