Partage

[Cours] algèbre relationnelle & SQL

3 janvier 2018 à 13:16:58

Bonjour,

J'ai un problème avec la commande ALL du chapitre 4.4 "Imbriquez des requêtes avec IN, ALL, ANY et EXISTS"...

Lorsque j'essaie de réaliser cette commande :

SELECT * FROM nb_entities WHERE cnt_entities >ALL (SELECT cnt_entities FROM nb_entities WHERE intermediary_id IN (5000,5001,5002))

J'ai systématiquement une erreur::

[13:10:24] Erreur pendant l’exécution de la requête sur la base de données « panamapapers » : near "ALL": syntax error

J'ai cherché dans le manuel de SQLLite, essayé d'ajouter une clé primaire à la table créée, ... mais rien ne marche.

Une idée du problème ?

Merci

J'utilise SQL Lite Studio 3.1.1 sous Ubuntu 16.04

19 janvier 2018 à 17:46:56

Bonjour.

Je présente la requête suivante  

SELECT lifetime, count(lifetime)
FROM entity
-- WHERE count(lifetime) > 99 GROUP BY lifetime
ORDER BY count(lifetime) DESC
 
;


 

en cherchant à limiter mes résultats aux tuples dont le compte lifetime est au moins 100.

J'ai beau me creuser les méninges, je ne vois pas comment faire.

Quelqu'un pourrait-il m'éclairer ?

@Nicolas Rangeon : vous êtes agréable à écouter.

J'apprécie vos cours pour leur contenu et pour la présentation que vous en faites.

Manifestement je ne saisis pas encore toutes les subtilités du langage (à preuve le code ci-dessus !!!), mais grâce à vous, je progresse plus rapidement que je ne l'aurais cru. Un grand Merci.

-
Edité par GuyLeBleu 19 janvier 2018 à 17:48:25

24 janvier 2018 à 17:31:52

bonsoir ,

le lien sur lequel nous pouvons aller télécharger la base de donnée panama papers ne passe .

merci de bien vouloir m'aider

24 janvier 2018 à 23:59:39

Bonjour,

Les liens vers les téléchargements sont dans la partie du cours "comprenez les bases de données SQL": La BDD au format sqlite3 est ici [clic]

Dans l'archive il y a un document about[...] qui contient les infos sur la source la BDD et le fichier suffixé .sqlite3 est celui qu'il faut attacher dans le gestionnaire de BDD.

25 janvier 2018 à 0:16:18

merci

Mouard a écrit:

Bonjour,

Les liens vers les téléchargements sont dans la partie du cours "comprenez les bases de données SQL": La BDD au format sqlite3 est ici [clic]

Dans l'archive il y a un document about[...] qui contient les infos sur la source la BDD et le fichier suffixé .sqlite3 est celui qu'il faut attacher dans le gestionnaire de BDD.



2 février 2018 à 1:20:48

Bonjour,

1) Pour l'exercice de la partie 3, j'utilise directement SQLiteStudio au lieu de la console interactive. Mes captures d'écran contiennent à la fois les requêtes SQL (en haut) et les tables renvoyées par les requêtes (en bas). Est-ce suffisant avant de vous envoyer le fichier zip ? Vous avez demandé de fournir les requêtes ainsi que des captures d'écran. Ce n'est pas très clair pour moi.

2) Pour les questions 2, 4 et 5, faut-il faire une projection sur les attributs recherchés ou peut-on garder tous les attributs dans la table renvoyée après la requête (ex: first name, last name etc, hire date...) ? Dans les deux cas, la requête n'est pas identique.

Merci.

6 février 2018 à 19:41:00

Bonjour !

Je voudrais avant toute chose vous remercier pour le contenu des cours et la disponibilité des professeurs d'Openclassrooms.

Je viens à vous car je me heurte à un problème qui me semble étrange.

Dans le chapitre "Imbriquez des requêtes avec IN, ALL et ANY", il m'est impossible d'obtenir une réponse de ma base de données quand j'utilise "ALL", (Error while executing SQL query on database 'panamapapers': near "ALL": syntax error), et de même quand j'utilise "ANY", où selon mes bidouillages j'obtiens soit (Error while executing SQL query on database 'panamapapers': near "select": syntax error) soit carrément (Error while executing SQL query on database 'panamapapers': no such function: any).

J'avais eu des problèmes au niveau des jointures également, mais j'avais trouvé la parade via divers tuto trouvés sur le net. Je précise que j'utilise le logiciel SQLiteStudio (3.1.1), en anglais, et que ces erreurs se produisent systématiquement lorsque mon éditeur souligne mes requêtes en rouge.

Je mentionne ce dernier fait car j'ai remarqué que dans la vidéo d'explication du chapitre correspondant (Imbriquez des requêtes avec IN, ALL et ANY), vous avez le même phénomène (requête soulignée en rouge par sqlitestudio, au même endroit que moi d'ailleurs), mais qu'il vous renvoie quand même une réponse, ce que ma base de donnée refuse (obstinément) de faire quand cela se produit.

Aidez-moi s'il vous plaît ! =D

-
Edité par AlexisMichelot3 6 février 2018 à 19:55:35

11 février 2018 à 13:14:43

Bonjour @AlexisMichelot3,

J'avais posé la même question il y a un mois sur ce thread, mais pas de réponse.
J'avais conclu de mes recherches que SQLiteStudio ne gère pas les requêtes "ALL" .. (!)

Team OC 14 février 2018 à 10:47:46

GuyLeBleu a écrit:

Bonjour.

Je présente la requête suivante  

SELECT lifetime, count(lifetime)
FROM entity
-- WHERE count(lifetime) > 99 GROUP BY lifetime
ORDER BY count(lifetime) DESC
 
;


 

en cherchant à limiter mes résultats aux tuples dont le compte lifetime est au moins 100.

J'ai beau me creuser les méninges, je ne vois pas comment faire.

Quelqu'un pourrait-il m'éclairer ?

@Nicolas Rangeon : vous êtes agréable à écouter.

J'apprécie vos cours pour leur contenu et pour la présentation que vous en faites.

Manifestement je ne saisis pas encore toutes les subtilités du langage (à preuve le code ci-dessus !!!), mais grâce à vous, je progresse plus rapidement que je ne l'aurais cru. Un grand Merci.

-
Edité par GuyLeBleu 19 janvier 2018 à 17:48:25


Bonjour Guy,

La requête que vous mentionnez ne peut pas fonctionner car dans votre clause SELECT, vous avez à la fois une colonne (lifetime) et une fonction d'agrégation (count). Or, il n'y a pas de clause GROUP BY. Vous vous retrouvez donc dans le cas cité dans ce chapitre https://openclassrooms.com/courses/initiez-vous-a-lalgebre-relationnelle-avec-le-langage-sql/agregez-vos-donnees-grace-au-group-by (dans la section "Une petite énigme"):  Un peu plus bas, il est expliqué comment vous en sortir ;)

traoreteddyadaire a écrit:

bonsoir ,

le lien sur lequel nous pouvons aller télécharger la base de donnée panama papers ne passe .

merci de bien vouloir m'aider


Bonjour traoreteddyadaire, de quel lien parlez-vous ?


@jbbabayou et @AlexisMichelot3, les mots clés ALL et ANY sont disponibles dans beaucoup de SGBDR, mais malheureusement pas dans la plupart des versions de SQLite. Vous pouvez les tester sous Mysql via la console interactive.

-
Edité par Nicolas Rangeon 14 février 2018 à 11:02:42

15 février 2018 à 10:38:14

Bonjour, dans le quizz sur l'algèbre relationnelle, la dernière question (7) est cassée : les choix sortent d'un cours de code de la route...

[Cours] algèbre relationnelle & SQL

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
  • Editeur
  • Markdown