Difficulté avec requête SQLite
Résolurapidegoyes Messages postés 107 Date d'inscription samedi 22 février 2020 Statut Membre Dernière intervention 12 février 2025 - 27 janv. 2025 à 22:23
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table
- Table ascii - Guide
- Impossible de supprimer une page word - Guide
- Table de matière word - Guide
- Google moteur de recherche page d'accueil - Guide
- Web office - Guide
4 réponses
Modifié le 26 janv. 2025 à 23:07
Bonjour,
Tu as plusieurs soucis dans ton code.
Déjà, avec un SUM .. tu ne peux pas en plus mettre le *
Et en effet, il ne faut pas utiliser execSQL qui sert uniquement pour faire des update / delete / insert
mais rawQuery quand tu fais du select.
Et enfin, ta fonction n'utilise pas le résultat de la requête..
Essaye ça
public int calculPourSyst() { SQLiteDatabase db = this.getReadableDatabase(); int sumSyst = 0; // Requête SQL corrigée String query = "SELECT SUM(syst) AS total_syst FROM releves"; Cursor cursor = db.rawQuery(query, null); // Récupération du résultat if (cursor.moveToFirst()) { sumSyst = cursor.getInt(cursor.getColumnIndexOrThrow("total_syst")); } // Fermeture du curseur cursor.close(); return sumSyst; }
27 janv. 2025 à 11:28
Bonjour jordane45,
Merci pour ton aide, je vais essayer de rectifier ce soir.
Très cordialement
rapidego&
Modifié le 27 janv. 2025 à 21:47
Bonsoir à tous,
Je viens à l'instant d' essayer super ça fonctionne.
J'ai codé l' exemple de jordane45 dans mon fichier SQLDataBaseHelper dans le quel je place toutes mes requêtes.
Ensuite je lance ta requête par action sur un bouton dans mon fichier AfficheBDD.
J'ai relu mes notes sur MySQL effectivement il ne faut pas coder avec étoile * car pour ce dernier, on ne s'en sert que pour sélectionner toutes les colonnes d'une table.
Au sujet du rajout de AS total_syst quel est vraiment son rôle d'après mes recherches il s'agit de création d'une colonne à cet effet je n'osais pas l'utiliser.
C'est un peu flou pour moi, je suis preneur de renseignements à ce sujet.
Merci à tous
Très cordialement
A+++
rapidegoyes
27 janv. 2025 à 22:06
bonjour
renseigne-toi sur ce qu'est un alias dans une requête SQL.
27 janv. 2025 à 22:23
Bonsoir,
C'est super je viens d'essayer la fonction en utilisant COUNT(), AVG(),pour la moyenne,
MIN() renvoie la valeur la plus basse, MAX() idem mais valeur la plus haute.
Tout fonctionne il me fallait les 3.
Merci pour tout je vais enfin pouvoir continuer mon code, je butais vraiment la dessus
A+++ très cordialement
rapidegoyes