[RESOLU] Plusieurs SELECT dans une même requête ?

Avatar du membre
Eléphant du PHP | 154 Messages

04 déc. 2014, 01:18

Hello,

Peut-on faire plsuieurs SELECT dans une même requête ?

Je m'explique :
J'ai un SELECT à faire comme ceci
SELECT param_value AS pds FROM config WHERE param_name = 'prod_date_switch'
Et si je la copie dans le SQL de phpmyadmin, j'obtiens une colone pds , d'une ligne, dont la valeur du paramètre.

J'ai un autre SELECT à faire :
SELECT param_value AS eop FROM config WHERE param_name = 'end_of_prod' 
Qui me donne bien une colonne eop, d'une ligne aussi, dont la valeur est celle du paramètre voulu.

Plutot que de faire à chaque requète, les commandes suivantes :
	$sql = mysql_query($sql) ;
	$donnees = mysql_fetch_array($sql);
Je voudrais faire un truc du genre :
$sql = "SELECT param_value AS pds FROM config WHERE param_name = 'prod_date_switch'
SELECT param_value AS eop FROM config WHERE param_name = 'end_of_prod' ";
	$sql = mysql_query($sql) ;
	$donnees = mysql_fetch_array($sql);
Pour otenir deux colonnes (une pds et une eop) , d'une ligne, avec mes deux valeurs respectives, pour ensuite exploiter $donnees['pds'] et $donnees['eop'].

Evidement, si je teste
SELECT param_value AS pds FROM config WHERE param_name = 'prod_date_switch'
SELECT param_value AS eop FROM config WHERE param_name = 'end_of_prod'

dans phpmyadmin, cela ne marche pas, et si je mets un ; à la fin de la première ligne pour ne pas avoir de message d'erreur, je n'ai que la deuxième de prise en compte.

Si quelqu'un a une idée :oops:

M'ciiii !
Un Couin vaut mieux que Deux tu couineras :D

Eléphant du PHP | 453 Messages

04 déc. 2014, 01:42

Bonsoir,

Ça ne résout pas ton souci ?
SELECT 
	param_value,
	param_name 
FROM 
	config 
WHERE 
	param_name = 'prod_date_switch'
AND
	param_name = 'end_of_prod' 
ORDER BY param_name;
La Tux attitude avec les kiw'z syou plait
Komodo Edit - Inkscape - Dia

Nestecha
Invité n'ayant pas de compte PHPfrance

04 déc. 2014, 01:48

Hello,

Essaie avec ça :
SELECT (SELECT param_value FROM config) AS pds WHERE param_name = 'prod_date_switch', (SELECT param_value FROM config) AS eop  WHERE param_name = 'end_of_prod'
Normalement ça devrait fonctionner.

Nestecha
Invité n'ayant pas de compte PHPfrance

04 déc. 2014, 01:49

Bonsoir,

Ça ne résout pas ton souci ?
SELECT 
	param_value,
	param_name 
FROM 
	config 
WHERE 
	param_name = 'prod_date_switch'
AND
	param_name = 'end_of_prod' 
ORDER BY param_name;
Hello, je ne pense pas vu qu'il veut attributer des alias à chaque résultat obtenu !

Nestecha
Invité n'ayant pas de compte PHPfrance

04 déc. 2014, 02:01

Petite coquille dans le code que je t'ai écrit, voilà la bonne syntaxe !
SELECT (SELECT param_value FROM config WHERE param_name = 'prod_date_switch') AS pds, (SELECT param_value FROM config WHERE param_name = 'end_of_prod') AS eop

Avatar du membre
Eléphant du PHP | 154 Messages

04 déc. 2014, 02:27

Petite coquille dans le code que je t'ai écrit, voilà la bonne syntaxe !
SELECT (SELECT param_value FROM config WHERE param_name = 'prod_date_switch') AS pds, (SELECT param_value FROM config WHERE param_name = 'end_of_prod') AS eop

C'ets parfait :)

Merci beaucoup à vous deux :wink:
Un Couin vaut mieux que Deux tu couineras :D