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...
26 février 2018 à 8:34:35

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.

Team OC 28 février 2018 à 10:02:15

C'est corrigé ;)


RémiJullien a écrit:

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...


Bonjour Karim,

Concernant les captures d'écran, si la requête apparait sur l'image, c'est bon.

Pour votre seconde question, toute requête qui est cohérente avec la question posée et dont le résultat contient la bonne réponse sera acceptée.


KarimObich a écrit:

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.



-
Edité par Nicolas Rangeon 28 février 2018 à 10:06:05

9 mars 2018 à 11:34:00

Bonjour Nicolas,

J'ai voulu afficher deux colonnes dans la requete imbriquée avec le IN mais j'obtiens une erreur. Alors est-ce qu'on peut utiliser IN et afficher plus de colonnes dans la requete imbriquée ?

operateur IN

9 mars 2018 à 11:53:44

Bonjour,

J'ai fait toutes les questions de votre cours d'initiation à l'algèbre relationnelle avec SQL lite. Mais il me semble que plu rien ne marche pour  l'avant-dernière question du cours où il me semble avoir besoin de la formule OVER.

J'ai essayé d'installer Postgresql mais c'est beaucoup plus difficile d'utilisation, et je ne sais même pas comment importer la base de données employees... Le fichier que j'ai téléchargé est un fichier SQLlIte...  Pourriez-vous m'aider ?

Cordialement,

R.S.

9 mars 2018 à 15:24:40

Bonjour, 

J'ai une question pour l'activité " Effectuez des requêtes avancées en SQL". Pourriez-vous me dire si le nom de famille est le "first_name" ou le "last_name" ? Parce que j'ai répondu la question avec le "fisrt_name" .

Merci :)

17 mars 2018 à 1:14:55

ChipindaDahilouni a écrit:

Bonjour, 

J'ai une question pour l'activité " Effectuez des requêtes avancées en SQL". Pourriez-vous me dire si le nom de famille est le "first_name" ou le "last_name" ? Parce que j'ai répondu la question avec le "fisrt_name" .

Merci :)

En anglais, "First name" C'est le prénom, "last_name" le nom de famille.

Comme en français, on met d'abord le prénom  (first) , et en dernier le nom de famille (=last). C'est mon moyen mnémotechnique :-)

11 avril 2018 à 12:07:09

Bonjour,

Je rencontre des problème avec l'utilisation de la console intégré dans les exercices sur les Panama papers. En fait quand on lance le code écrit dans le fichier requete.sql (soit avec executer, soit avec ctrl+entrée ) On a l'erreur suivante:

ERROR:
Failed to open file '~/sandbox/requetes.sql', error: 2

Il semble qu'il y ai un soucis avec le chemin d'accès puisque si je lance 

SOURCE '/root/sandbox/requetes.sql'

Tout se passe bien.

Voilà !


Dans la vie rien n'est à craindre, tout est à comprendre- Marie Curie
Team OC 7 mai 2018 à 19:22:16

Bonjour,

Juste avant le mot clé IN, vous n'avez spécifié qu'une seule colonne (id_adress). Le résultat de votre sous-requête sera comparée à id_address, il faut donc que votre sous-requête ne renvoie qu'une seule colonne ;)

ChipindaDahilouni a écrit:

Bonjour Nicolas,

J'ai voulu afficher deux colonnes dans la requete imbriquée avec le IN mais j'obtiens une erreur. Alors est-ce qu'on peut utiliser IN et afficher plus de colonnes dans la requete imbriquée ?



Team OC 23 mai 2018 à 14:24:55

Bonjour Yorwan, je pense avoir corrigé l'erreur, pouvez-vous vérifier si cela fonctionne svp ?

Merci ;)

Yorwan a écrit:

Bonjour,

Je rencontre des problème avec l'utilisation de la console intégré dans les exercices sur les Panama papers. En fait quand on lance le code écrit dans le fichier requete.sql (soit avec executer, soit avec ctrl+entrée ) On a l'erreur suivante:

ERROR:
Failed to open file '~/sandbox/requetes.sql', error: 2

Il semble qu'il y ai un soucis avec le chemin d'accès puisque si je lance 

SOURCE '/root/sandbox/requetes.sql'

Tout se passe bien.

Voilà !




11 juin 2018 à 11:37:18

Bonjour

SVP j'ai besoin d'aide

je dispose de deux tables

une qui s'appelle ocuppant et possede comme champ: nomImmeuble, noappart, nomoccup et une autre table

nommée appartemment ayant les champs:nomImmeuble, noappart, etage

et je voudrais afficher les noms des occupants qui habite au derniers etage de chaque immeuble

pardon besoin d'aide

[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