Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2846 connectés 

 


Débat n°1




Attention si vous cliquez sur "voir les résultats" vous ne pourrez plus voter

 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  16  17  18  ..  20  21  22  23  24  25
Auteur Sujet :

BlaBla@SQL

n°2219481
xuan-khanh
...
Posté le 13-02-2014 à 13:51:42  profilanswer
 

Reprise du message précédent :
Concept d'héritage 3FN soit :
- tu spécialises donc dans le cas de mechkurt, tu distingues 2 colonnes de jointures  
- tu généralises mais dans ce cas il faut matérialiser une entité propre et donc tu auras les tables group, user et par exemple owner.
 
Dans le second cas, il faut vraiment que owner ait ses propres propriété pour partir sur cet héritage sinon rester dans le cas de mechkurt la meilleurs solution semblerait-il dans ton cas.

mood
Publicité
Posté le 13-02-2014 à 13:51:42  profilanswer
 

n°2219489
koskoz
They see me trollin they hatin
Posté le 13-02-2014 à 14:12:07  profilanswer
 

Ok, je pars là-dessus, par contre il ne me semble pas que ce soit 3NF sachant qu'une des deux colonnes sera à NULL.


---------------
Twitter
n°2221847
MrFreeze
Don't Panic
Posté le 07-03-2014 à 20:13:33  profilanswer
 

salut,
je bosse avec une DB sous mySQL (innoDB) et je dois verifier l'etat de la replication avant de lancer des procedures.
Quand je lance SHOW SLAVE STATUS, quelle table est utilisée dans information_schema? J'ai besoin de me faire une requete a base de:
CASE WHEN (SELECT Seconds_Behind_Master FROM (??) = 0 THEN .. ELSE ... END )

 

Merci


Message édité par MrFreeze le 07-03-2014 à 20:14:11

---------------
I have a bad feeling about this
n°2230222
Volkhen
Posté le 09-06-2014 à 01:33:34  profilanswer
 

Question aux experts : avez vous des conseils de lecture pour tout ce qui concerne le design de bdd permettant de faire un versioning des données. Le but serait de pouvoir avoir plusieurs branches et de pouvoir appliquer des changements faits sur une branche vers d'autres branches.
 
Je pensais partir sur une découpe des données en trois parties :
- les tables d'identifiants qui permettent de retrouver les objets et leurs relations
- les tables de version qui stockent les données pouvant changer
- des tables stockant les changeset
 
Mais il y a de bonnes chances que je m'embarque pour réinventer une roue qui finira ovale donc si vous avez de bonnes références sur ce genre de problèmes, je suis preneur.


---------------
Main/Alt1/Alt2/Alt3
n°2230326
LeRiton
Posté le 10-06-2014 à 14:43:13  profilanswer
 
n°2230377
Volkhen
Posté le 10-06-2014 à 21:27:13  profilanswer
 


Pour la structure de la base c'est ok.
 
Pour faire du "j'ai mes données dans plusieurs branches, je souhaites appliquer les modifications faites dans la branche A sur les branches C et E" je le sens moins.


---------------
Main/Alt1/Alt2/Alt3
n°2230482
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 01:02:42  profilanswer
 

Y a encore des vieux cons comme moi qui trainent sur ce forum ? [:joce]


Message édité par joce le 12-06-2014 à 01:03:03
n°2230494
skeye
Posté le 12-06-2014 à 07:10:53  profilanswer
 

Définis "comme toi".:D


---------------
Can't buy what I want because it's free -
n°2230496
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 08:17:00  profilanswer
 

Qui sont arrivé y a longtemps sur ce forum, et qui prennent un gros coup de vieux en réalisant que c'était y a plus de 10 ans :cry: (tu rentres dans cette catégorie :D)

Message cité 1 fois
Message édité par joce le 12-06-2014 à 08:17:30
n°2230499
TheCreator
zwiiiii and then shbrouk tak
Posté le 12-06-2014 à 08:26:33  profilanswer
 

ah ouais il a quelques messages effectivement :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
mood
Publicité
Posté le 12-06-2014 à 08:26:33  profilanswer
 

n°2230501
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 08:28:12  profilanswer
 

TheCreator a écrit :

ah ouais il a quelques messages effectivement :o


par rapport à ca, j'ai une réclamation, avant j'avais 16M de posts, et apparement y a eu une MAJ du forum qui a changé les compteurs, c'est une honte ! :o

n°2230502
TheCreator
zwiiiii and then shbrouk tak
Posté le 12-06-2014 à 08:40:16  profilanswer
 

joce a écrit :


par rapport à ca, j'ai une réclamation, avant j'avais 16M de posts, et apparement y a eu une MAJ du forum qui a changé les compteurs, c'est une honte ! :o


 
les posts insert en sql ça compte pas :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
n°2230503
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 08:49:09  profilanswer
 

TheCreator a écrit :


 
les posts insert en sql ça compte pas :o


Autant fait un update sur le compteur de posts :D

n°2230504
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 08:57:57  profilanswer
 

Ah tient au fait, je vais créer un ch'ti topic, mais j'aurais besoin de betatesteur (tout de suite maintenant) pour la nouvelle version du soft sur lequel je travaille :o

 

Le site du soft en question : http://www.codizy.com
Y en a que ca pourrait intéresser ?

 

Edit : topic créé : http://forum.hardware.fr/hfr/Progr [...] 2180_1.htm

Message cité 1 fois
Message édité par joce le 12-06-2014 à 09:09:39
n°2230509
skeye
Posté le 12-06-2014 à 09:23:16  profilanswer
 

joce a écrit :

Qui sont arrivé y a longtemps sur ce forum, et qui prennent un gros coup de vieux en réalisant que c'était y a plus de 10 ans :cry: (tu rentres dans cette catégorie :D)


ah dans ce cas t'en as un paquet sur blabla@prog...:D


---------------
Can't buy what I want because it's free -
n°2230512
skeye
Posté le 12-06-2014 à 09:31:23  profilanswer
 

joce a écrit :

Ah tient au fait, je vais créer un ch'ti topic, mais j'aurais besoin de betatesteur (tout de suite maintenant) pour la nouvelle version du soft sur lequel je travaille :o
 
Le site du soft en question : http://www.codizy.com
Y en a que ca pourrait intéresser ?
 
Edit : topic créé : http://forum.hardware.fr/hfr/Progr [...] 2180_1.htm


 
Fais la même chose avec php/oracle et je jetterai un oeil.:o


---------------
Can't buy what I want because it's free -
n°2230515
joce
Architecte / Développeur principal
"BugHunter"
Posté le 12-06-2014 à 09:38:41  profilanswer
 

skeye a écrit :


 
Fais la même chose avec php/oracle et je jetterai un oeil.:o


MySQL c'est oracle :whistle:

n°2230651
rufo
Pas me confondre avec Lycos!
Posté le 12-06-2014 à 16:49:12  profilanswer
 

Volkhen a écrit :

Question aux experts : avez vous des conseils de lecture pour tout ce qui concerne le design de bdd permettant de faire un versioning des données. Le but serait de pouvoir avoir plusieurs branches et de pouvoir appliquer des changements faits sur une branche vers d'autres branches.
 
Je pensais partir sur une découpe des données en trois parties :
- les tables d'identifiants qui permettent de retrouver les objets et leurs relations
- les tables de version qui stockent les données pouvant changer
- des tables stockant les changeset
 
Mais il y a de bonnes chances que je m'embarque pour réinventer une roue qui finira ovale donc si vous avez de bonnes références sur ce genre de problèmes, je suis preneur.


 
Tu parles de faire une BD pour faire de la gestion de conf, chaque conf étant versionnée et ayant des items possédant une valeur ?
 
Si ça t'intéresses, tu peux regarder mon soft Icare (cf ma signature). Dans ce type de situation, j'avais constaté qu'entre 2 versions de conf, il y avait qu'un faible % d'items qui changeaient de valeur. Du coup, plutôt que de versionner chaque item (comme le fait Advitium, par ex), je versionnais la conf et son contenu était en fait un ensemble de liens qui pointaient sur des items (ou attribut) ayant la valeur adéquat. Du coup, un même item pouvait être associé à plusieurs confs. Quand il n'y avait plus aucun lien de conf qui pointait sur un item, celui-ci était supprimé de la BD. Ca a fait gagner un max de place en BD. Quand les conf étaient dans Advitium (une version qui datait de 2007-2008 à peu près), environ 250 confs de machines, chaque conf possédant entre 150 et 300 items, ça prenait environ 100 Mo. Dans mon outil Icare, ça prenait moins de 5 Mo :D
 
Après, mon cas d'utilisation ne marche peut-être pas dans tous les cas de figure...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2254049
TotalRecal​l
Posté le 24-03-2015 à 16:05:03  profilanswer
 

Bonjour les warriorz, j'ai une question con (enfin, je soupçonne surtout que ça vient du code que j'ai récupéré).
Sous SQL Server, j'ai une procédure stockée truffée de :

Code :
  1. convert(char(8), champ + 0, 112) as 'Valeur',


Où champ est un datetime.

 

Ma question est : à quoi sert selon vous le "+ 0" ?
A première vue (et même seconde!), je dirai à rien du tout.
L'opérateur + est sensé servir à introduire un offset il me semble, sans avoir à passer par dateadd. Mais avec 0 forcément...

 

Comme le gars qui a commis ça en a mis un peu partout, je me dis que peut être il y a une subtilité...

 

Merci


Message édité par TotalRecall le 24-03-2015 à 16:23:19

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2254051
joce
Architecte / Développeur principal
"BugHunter"
Posté le 24-03-2015 à 16:07:40  profilanswer
 

je connais pas SQL Server, mais c'est peut être pour caster la date en int (et donc virer le '-')

 

Ex avec MySQL

 
Code :
  1. MariaDB [(none)]> SELECT CAST('2014-12-10 00:00:00' as datetime);
  2. +-----------------------------------------+
  3. | CAST('2014-12-10 00:00:00' as datetime) |
  4. +-----------------------------------------+
  5. | 2014-12-10 00:00:00                     |
  6. +-----------------------------------------+
  7. 1 row in set (0.00 sec)
  8. MariaDB [(none)]> SELECT CAST('2014-12-10 00:00:00' as datetime)+0;
  9. +-------------------------------------------+
  10. | CAST('2014-12-10 00:00:00' as datetime)+0 |
  11. +-------------------------------------------+
  12. |                            20141210000000 |
  13. +-------------------------------------------+
  14. 1 row in set (0.00 sec)
 


Message édité par joce le 24-03-2015 à 16:08:42

---------------
Protèges carnets personnalisés & accessoires pour bébé
n°2254054
TotalRecal​l
Posté le 24-03-2015 à 16:19:50  profilanswer
 

[:stellayr] joce,
Intéressant ce comportement avec mysql  [:otan beauval]

 

Dans mon cas y a pas ce genre de magouille sur le type, d'autant que le +0 a lieu avant le convert qui te sortira toujours un char(8) avec le format "112", et en entrée c'est toujours un datetime (selon moi le +xxx en SQL Server ne fait pas ce qu'il fait avec mysql, il préserve le type).
De toute façon la procstock a l'air de cacater la même chose avec et sans les +0, donc...


Message édité par TotalRecall le 24-03-2015 à 16:25:08

---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2254517
Oliiii
Posté le 30-03-2015 à 15:27:27  profilanswer
 

Je confirme, ça sert a rien.
Peut être un reste d'un truc généré automatiquement?

n°2258261
tomsoft
Posté le 18-05-2015 à 10:14:19  profilanswer
 

:hello:  
 
J'ai un problème avec mysql, que je n'arrive pas à résoudre :
 
La requête 1 fonctionne : elle me donne le nombre de produits dans une commande.
La requête 2 fonctionne : elle me donne le nombre de produits expédiés dans une commande.
La requête 3, qui est le melange des deux (permet de voir le nombre de produits commandés VS expédiés), ne fonctionne pas, avec des résultats faux (quantités énormes, genre 24 au lieu de 6, ...)
 

Code :
  1. SELECT
  2. o.id, o.created_at, SUM(op.quantity)
  3. FROM
  4. orders o, orders_products op
  5. WHERE
  6. op.order_id=o.id
  7. GROUP BY
  8. o.id ORDER BY o.id DESC LIMIT 0,100;


 

Code :
  1. SELECT
  2. o.id, o.created_at, SUM(osp.quantity)
  3. FROM
  4. orders o, orders_shipments os, orders_shipments_products osp
  5. WHERE
  6. os.order_id=o.id AND os.id=osp.order_shipment_id
  7. GROUP BY
  8. o.id ORDER BY o.id DESC LIMIT 0,100;


 

Code :
  1. SELECT
  2. o.id,
  3. o.created_at,
  4. SUM(op.quantity),
  5. SUM(osp.quantity)
  6. FROM
  7. orders o,
  8. orders_products op,
  9. orders_shipments os,
  10. orders_shipments_products osp
  11. WHERE
  12. op.order_id=o.id AND
  13. os.order_id=o.id AND
  14. os.id=osp.order_shipment_id
  15. GROUP BY
  16. o.id
  17. ORDER BY o.id DESC LIMIT 0,100;


 
Vous avez une idée ? je pense à une jointure qui foire, mais aucune idée de pourquoi ?
Merci  :jap:

n°2258262
kao98
...
Posté le 18-05-2015 à 10:23:53  profilanswer
 

Avec une "vraie" jointure, ça donne quoi ?
 

Code :
  1. SELECT
  2.  o.id,
  3.  o.created_at,
  4.  SUM(op.quantity),
  5.  SUM(osp.quantity)
  6.  
  7. FROM
  8.  orders o
  9.  INNER JOIN orders_products op
  10.    ON o.id = op.order_id
  11.  INNER JOIN orders_shipments os
  12.    ON o.id = os.order_id
  13.  INNER JOIN orders_shipments_products osp
  14.    ON os.id = osp.order_shipment_id
  15.  
  16. GROUP BY
  17.  o.id
  18.  
  19. ORDER BY
  20.  o.id DESC LIMIT 0,100;


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2258265
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-05-2015 à 10:34:28  profilanswer
 

tomsoft a écrit :

:hello:

 

J'ai un problème avec mysql, que je n'arrive pas à résoudre :

 

La requête 1 fonctionne : elle me donne le nombre de produits dans une commande.
La requête 2 fonctionne : elle me donne le nombre de produits expédiés dans une commande.
La requête 3, qui est le melange des deux (permet de voir le nombre de produits commandés VS expédiés), ne fonctionne pas, avec des résultats faux (quantités énormes, genre 24 au lieu de 6, ...)

 
Code :
  1. SELECT
  2. o.id, o.created_at, SUM(op.quantity)
  3. FROM
  4. orders o, orders_products op
  5. WHERE
  6. op.order_id=o.id
  7. GROUP BY
  8. o.id ORDER BY o.id DESC LIMIT 0,100;
 
Code :
  1. SELECT
  2. o.id, o.created_at, SUM(osp.quantity)
  3. FROM
  4. orders o, orders_shipments os, orders_shipments_products osp
  5. WHERE
  6. os.order_id=o.id AND os.id=osp.order_shipment_id
  7. GROUP BY
  8. o.id ORDER BY o.id DESC LIMIT 0,100;
 
Code :
  1. SELECT
  2. o.id,
  3. o.created_at,
  4. SUM(op.quantity),
  5. SUM(osp.quantity)
  6. FROM
  7. orders o,
  8. orders_products op,
  9. orders_shipments os,
  10. orders_shipments_products osp
  11. WHERE
  12. op.order_id=o.id AND
  13. os.order_id=o.id AND
  14. os.id=osp.order_shipment_id
  15. GROUP BY
  16. o.id
  17. ORDER BY o.id DESC LIMIT 0,100;
 

Vous avez une idée ? je pense à une jointure qui foire, mais aucune idée de pourquoi ?
Merci  :jap:

 

Le truc c'est que si ta jointure sur op renvoie plusieurs lignes et idem pour os / osp, ca va dupliquer toutes les lignes et fausser les compteurs de tout le monde. Donc tu ne pourras pas les calculer dans une seule requête, sauf à faire une sous requête.

Message cité 2 fois
Message édité par joce le 18-05-2015 à 10:38:45

---------------
Protèges carnets personnalisés & accessoires pour bébé
n°2258267
kao98
...
Posté le 18-05-2015 à 10:36:13  profilanswer
 

joce a écrit :


 
Le truc c'est qui si ta jointure sur op renvoie plusieurs lignes et idem pour os / osp, ca va dupliquer toutes les lignes et fausser les compteurs de tout le monde. Donc tu ne pourrais pas les calculer dans une seule requête, sauf à faire une sous requête.


:jap:
 
Effectivement, j'avais pas vu ça.


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2258269
tomsoft
Posté le 18-05-2015 à 10:45:28  profilanswer
 

kao98 a écrit :

Avec une "vraie" jointure, ça donne quoi ?
 

Code :
  1. SELECT
  2.  o.id,
  3.  o.created_at,
  4.  SUM(op.quantity),
  5.  SUM(osp.quantity)
  6.  
  7. FROM
  8.  orders o
  9.  INNER JOIN orders_products op
  10.    ON o.id = op.order_id
  11.  INNER JOIN orders_shipments os
  12.    ON o.id = os.order_id
  13.  INNER JOIN orders_shipments_products osp
  14.    ON os.id = osp.order_shipment_id
  15.  
  16. GROUP BY
  17.  o.id
  18.  
  19. ORDER BY
  20.  o.id DESC LIMIT 0,100;



 

joce a écrit :


 
Le truc c'est que si ta jointure sur op renvoie plusieurs lignes et idem pour os / osp, ca va dupliquer toutes les lignes et fausser les compteurs de tout le monde. Donc tu ne pourras pas les calculer dans une seule requête, sauf à faire une sous requête.


 
C'est exactement ca oui, je vais faire en sous requêtes alors  :jap:  
C'est dur le SQL après quelques années de fainéantise avec un ORM  :o

n°2258274
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-05-2015 à 11:31:51  profilanswer
 
n°2258275
skeye
Posté le 18-05-2015 à 11:32:25  profilanswer
 

joce a écrit :

Les ORMs c'est le mal :o


 [:benou_+1]


---------------
Can't buy what I want because it's free -
n°2258278
kao98
...
Posté le 18-05-2015 à 11:49:01  profilanswer
 

joce a écrit :

Les ORMs c'est le mal :o


 


Ca dépend du contexte, mais clairement quand je peux m'en passer, je m'en passe  :whistle:


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
n°2258308
chrispc
T'es tendue Natasha !
Posté le 18-05-2015 à 18:02:47  profilanswer
 

Bonjour !  
 
J'ai un soucis dans ma table de jointure et je ne comprends pas pourquoi j'ai cette erreur sql là :
 
Erreur sur la requête SQL.
Message : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''1'' at line 1
Code : SELECT titre FROM salle s, avis a WHERE s.id_salle = a.'1'
 
alors que j'ai bien le résultat que je souhaite, c'est-à-dire 1 qui correspond à l'id_salle que je recherche.
 
Mon code est est le suivant :
 

Code :
  1. $cinqSallesMieuxNotes = executeRequete("SELECT id_salle, SUM(note) FROM avis GROUP BY id_salle ORDER BY SUM(note) DESC LIMIT 5" );
  2. $resultat1 = $cinqSallesMieuxNotes->fetch_assoc();
  3. $recupTitreSalle = executeRequete("SELECT titre FROM salle s, avis a WHERE s.id_salle = a.'" . $resultat1['id_salle'] . "'" );

Message cité 1 fois
Message édité par chrispc le 18-05-2015 à 18:04:41

---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
n°2258310
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-05-2015 à 18:19:10  profilanswer
 

c'est pas plutôt

 
Code :
  1. $recupTitreSalle = executeRequete("SELECT titre FROM salle s, avis a WHERE s.id_salle = a.id_salle AND a.id_salle='" . (int)$resultat1['id_salle'] . "'" );
 

que tu veux faire ?


Message édité par joce le 18-05-2015 à 18:19:57

---------------
Protèges carnets personnalisés & accessoires pour bébé
n°2258313
chrispc
T'es tendue Natasha !
Posté le 18-05-2015 à 18:29:05  profilanswer
 

Il semblerait que ça fonctionne déjà beaucoup mieux ^^
 
Maintenant faut que j'arrive à faire une boucle pour chopper les 5 premiers de la liste.


---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
n°2258314
joce
Architecte / Développeur principal
"BugHunter"
Posté le 18-05-2015 à 18:30:48  profilanswer
 

chrispc a écrit :

Il semblerait que ça fonctionne déjà beaucoup mieux ^^
 
Maintenant faut que j'arrive à faire une boucle pour chopper les 5 premiers de la liste.


Ah non pitié pas une boucle avec un break sinon je vais chercher le fouet à clous


---------------
Protèges carnets personnalisés & accessoires pour bébé
n°2258319
skeye
Posté le 18-05-2015 à 19:07:11  profilanswer
 

chrispc a écrit :


$recupTitreSalle = executeRequete("SELECT titre FROM salle s, avis a WHERE s.id_salle = a.'" . $resultat1['id_salle'] . "'" );


si l'utilisateur a le moindre moyen de saisir $resultat1['id_salle'] lui-même t'as gagné un coup de pelle à clous.:o

 

[edi]

 

Ah ben non, mal lu le bout de code...mais c'est vilain quand même, les requêtes préparées c'est pas pour les chiens.:o

Message cité 1 fois
Message édité par skeye le 18-05-2015 à 19:08:11

---------------
Can't buy what I want because it's free -
n°2258320
chrispc
T'es tendue Natasha !
Posté le 18-05-2015 à 19:11:01  profilanswer
 

skeye a écrit :


si l'utilisateur a le moindre moyen de saisir $resultat1['id_salle'] lui-même t'as gagné un coup de pelle à clous.:o
 
 [edi]
 
Ah ben non, mal lu le bout de code...mais c'est vilain quand même, les requêtes préparées c'est pas pour les chiens.:o


 
Je sais le code est vraiment moche mais quand on a 3 jours de SQL pour avoir le diplôme de dev au bout de 4 mois, c'est hardu... C'est pour cela que vous allez surement me voir souvent par ici vu que vous m'avez l'air fort sympathique =D !
 
Je vous épargne la boucle while ou foreach. Je tiens à la trouver solo ^^  


---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
n°2258670
chrispc
T'es tendue Natasha !
Posté le 24-05-2015 à 16:27:08  profilanswer
 

Bonjour, me revoilà de nouveau pour une question de table de jointure dont je ne me dépêtre pas...
 
Je souhaite pouvoir récupérer l'id_produit dans la table produit(id_produit(AI), id_salle, etat) pour pouvoir ensuite lorsqu'on appuie sur le lien issu d'une fonction de recherche, aller directement sur la fiche produit de celui-ci.
 
Je n'arrive pas à faire la bonne jointure entre la table salle( id_salle(AI), ville, titre, ...) et la table produit(id_produit(AI), id_salle, etat) pour ensuite pouvoir avoir un $_GET['id_produit']...
 
Mon code est le suivant :
 

Code :
  1. $query = $mysqli->query("SELECT * FROM salle s, produit p WHERE ville LIKE '%$requete%'  AND s.id_salle = p.id_salle ORDER BY id_produit DESC" ) or die (mysql_error());


 
Si la demande n'est pas comprise ou manque d'information sur les différentes tables dites le moi.
 
Merci !


Message édité par chrispc le 24-05-2015 à 16:27:59

---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
n°2258671
skeye
Posté le 24-05-2015 à 16:55:27  profilanswer
 

c'est pas clair, et tu mélanges php et sql dans tes questions...c'est blabla@SQL ici, tu devrais peut-être plutôt créer un topic à part.:o


---------------
Can't buy what I want because it's free -
n°2258672
chrispc
T'es tendue Natasha !
Posté le 24-05-2015 à 17:22:37  profilanswer
 

Ma question porte plutôt sur la partie SQL du problème la jointure.  
 
Il faut juste que je sache comment écrire ma requête pour récupérer l'id_produit dans la table produit. Après pour le côté PHP je saurai faire.


---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
n°2258673
skeye
Posté le 24-05-2015 à 17:25:56  profilanswer
 

chrispc a écrit :

Ma question porte plutôt sur la partie SQL du problème la jointure.

 

Il faut juste que je sache comment écrire ma requête pour récupérer l'id_produit dans la table produit. Après pour le côté PHP je saurai faire.

 

ta requête devrait fonctionner, si je lis bien. Même si la jointure s'écrirait de manière plus moderne en

 
Code :
  1. SELECT p.id_pproduit
  2. FROM salle s
  3.  JOIN produit p ON s.id_salle = p.id_salle
  4. WHERE ville LIKE '%$requete%'  
  5. ORDER BY p.id_produit DESC


Message édité par skeye le 24-05-2015 à 17:30:41

---------------
Can't buy what I want because it's free -
n°2258681
chrispc
T'es tendue Natasha !
Posté le 25-05-2015 à 00:46:46  profilanswer
 

Merci, pour la requête SQL plus dans l'air du temps =)  
 
Pour cette partie là ça fonction. Mon problème désormais se situe côté PHP ^^


---------------
L'écoconception n'est pas négociable - Topic habitats de demain : https://tinyurl.com/y5h2mjx7
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  16  17  18  ..  20  21  22  23  24  25

Aller à :
Ajouter une réponse
 

Sujets relatifs
Requete SQL de selection complexe[SQL SERVER] Ajout d'une colonne en PS...mais inutilisable
[ODBC] DSN pour se connecter à une base SQL[PDO/SQL] Aide selection et classement (JOIN ??)
Problème conditions requete SQLSQL/PHP BDD de réservation de chambres
Jointure 'LIKE' SQL => BOtable SQL Ajouter une colonne au lieu de creer une nouvelle table
Requête SQL complexe 
Plus de sujets relatifs à : BlaBla@SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR