|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() francis la grassaWebmaster Inscription : avril 2007 Messages : 56 ![]() |
bonjour,
j'ai beaucoup de mal à appréhender les requêtes mysql. et je passe 1 temps fou là dessus sans arriver à rien ou presque. je me posais une question : combien couterait une assistance ponctuelle ? non pas pour me faire un cours....ça rentre plus ! mais pour me pondre la requete en fonction de mes tables et de ce j'aimerais réaliser ? merci de votre réponse |
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 954 ![]() |
SQL est un langage. Il suffit de l'apprendre en prenant un bon bouquin ou un bon cours. C'est pas de la magie !
Je suppose que vous n'êtes pas né en sachant conduire ! Il en va de même avec n'importe quel langage informatique... Mon site web, comme mon bouquin, peuvent vous y aider. Sachez que je prends 1200 € la journée, et à l'heure 180 €. mais avec un heure on peut faire au moins 30 requêtes si : 1) les tables sont bien modélisé (votre MCD respecte au moins les 3 premières formes normales) 2) vous avez un modèle de données lisible (par exemple MERISE ou UML) 3) vos questions sont bien posées avec des, données de test (jeu de données de départ et exemple de résultat en, sortie !) A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#3 |
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Bon évidemment un expert qui se déplace ça coûte cher, mais si c'est juste pour une requête, poste le descriptif des tables avec des données en exemples.
Explique ce que tu veux obtenir avec un exemple du résultat et on pourra écrire la requête. Evidemment si c'est pour 30 requêtes ça fera beaucoup pour le forum... |
|
|
00
|
|
|
#4 | ||||||||||
|
Membre à l'essai
![]() francis la grassaWebmaster Inscription : avril 2007 Messages : 56 ![]() |
Merci à tous les 2 pour votre réponse. Comme vous l'avez deviné, je ne suis pas un pro et je me suis lancé dans quelque chose qui me dépasse un peu, honnêtement.
J'ai bien essayé de m'y mettre, mais c'est vraiment abstrait pour moi. Est-ce que mes tables sont correctement créées ? Je l'espère.... J'ai démarré ça il y a 4 ans maintenant. Je me suis fait aider régulièrement quand je bloquais, mais je dois dire que les requêtes, pour moi, c'est ce qu'il y a de "pire" à appréhender. Il me reste 1 requête à sortir et je considèrerai le site comme "fini", même si ça ne l'est jamais vraiment. Ce qui me bloque, c'est le code pour un moteur de recherche. Vous pouvez voir sur cette page test http://francis.cmc26.free.fr/index.p...lignesearchdoc la page de saisie qui appelle 3 tables dans des SELECT. table rubrique : Code :
Code :
Code :
Code :
je peut donner le lien vers la base du site test en mp, si une âme charitable veut bien me donner un coup de main. j'avoue que je ne m'attendais pas à de tels prix, mais ils sont sûrement mérités . ma page avec la requete à faire en ligne 96 : Code :
|
||||||||||
|
00
|
|
|
#5 | ||
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Ce n'est pas vraiment un problème purement de requête, mais fortement lié à php.
En gros l'idée c'est de générer la requête en fonction des paramêtres saisis par l'utilisateur. Je te propose un exemple avec PARU car je ne vois pas de lien entre RUBRIQUE et DOC, à toi de décliner l'idée : Code :
Code :
$query .= " AND p.numparu = ".$_POST["chxparu"]." "; Personnelement je préfèrerais l'utilisation de bind variable avec PDO par exemple, mais mysql_real_escape_string sera plus simple à intégrer dans ton site. |
||
|
|
00
|
|
|
#6 | |||||||
|
Membre à l'essai
![]() francis la grassaWebmaster Inscription : avril 2007 Messages : 56 ![]() |
Citation:
je ne suis pas sur d'avoir tout saisi mais je vais essayer d'avancer avec ça comme base. déjà, comme tu l'a remarqué, je t'ai mis une coquille la bonne table doc contient bien le numrubrique.Code :
Code :
je pense que je comprends la logique mise en oeuvre, je vais donc essayer de faire marcher ça. je ne manquerais pas de te faire 1 rapport @++ |
|||||||
|
00
|
|
|
#7 | ||
|
Membre à l'essai
![]() francis la grassaWebmaster Inscription : avril 2007 Messages : 56 ![]() |
je te livre ma page complète. j'ai encore une erreur :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /mnt/142/sdb/0/2/francis.cmc26/lignesearchdoc.php on line 145 Aucune fiche ne correspond à votre requête. Modifiez vos paramètres Code :
|
||
|
00
|
|
|
#8 | ||
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
Il faut aliaser les colonnes dans le SELECT.
Les jointures s'effectuent via l'opérateur JOIN, pas besoin de les lister dans la clause FROM. J'ai supprimé les tests liés aux jointures parce que tu peux vouloir ramener des colonnes de ces table, par contre tu n'utilises aucune colonne des tables RUBRIQUE et PARU. La fonction addquery ne sert à rien, je commence mon WHERE par 1=1 comme ça il suffit de rajouter des AND pour filter sans ce prendre la tête pour savoir si c'est le 1er rajouté ou pas. Donc quelque chose comme ça : Code :
Code :
IF(isset($_POST['chxpays']) AND $_POST['chxpays']<>'') |
||
|
|
00
|
|
|
#9 | |||
|
Membre à l'essai
![]() francis la grassaWebmaster Inscription : avril 2007 Messages : 56 ![]() |
Citation:
j'ai juste fait un essai express qui ne marche pas (normal pas le temps de m'y remettre vraiment avant quelques jours. je te tiens au courant probablement en début de semaine. et je te remercie vivement de ton assistance, c'est un vrai soutien !
|
|||
|
00
|
Copyright © 2000-2012 - www.developpez.com