OVH Cloud OVH Cloud

nom de colonne variable

4 réponses
Avatar
AXL
bonjour,

Je voudrais faire un select sur une colonne en fonction d'un parametre
envoyé

je m'explique

create procedure maproc
numchamp varchar(2)='1'

as

select monchamp+numchamp from matable

.....

donc en fait ma requete est :
- select monchamp1 from matable si numchamp=1 donc il me renvoie les info
du monchamp1 de matable
- select monchamp2 from matable si numchamp=2 donc il me renvoie les info
du monchamp2 de matable
- select monchamp3 from matable si numchamp=3 donc il me renvoie les info
du monchamp3 de matable
- ...

merci

4 réponses

Avatar
Laurent Moreau
Dans la proc:

DECLARE @Requete AS Varchar(8000)

SET @Requete='select monchamp' + CONVERT(VarChar(10),@numchamp) + ' from
matable'
EXEC (@Requete)



Laurent.





"AXL" wrote in message
news:u%
bonjour,

Je voudrais faire un select sur une colonne en fonction d'un parametre
envoyé

je m'explique

create procedure maproc
numchamp varchar(2)='1'

as

select monchamp+numchamp from matable

.....

donc en fait ma requete est :
- select monchamp1 from matable si numchamp=1 donc il me renvoie les info
du monchamp1 de matable
- select monchamp2 from matable si numchamp=2 donc il me renvoie les info
du monchamp2 de matable
- select monchamp3 from matable si numchamp=3 donc il me renvoie les info
du monchamp3 de matable
- ...

merci





Avatar
AXL
oki merci

"Laurent Moreau" a écrit dans le message
de news: cirvsn$7t5$

Dans la proc:

DECLARE @Requete AS Varchar(8000)

SET @Requete='select monchamp' + CONVERT(VarChar(10),@numchamp) + ' from
matable'
EXEC (@Requete)



Laurent.





"AXL" wrote in message
news:u%
bonjour,

Je voudrais faire un select sur une colonne en fonction d'un parametre
envoyé

je m'explique

create procedure maproc
numchamp varchar(2)='1'

as

select monchamp+numchamp from matable

.....

donc en fait ma requete est :
- select monchamp1 from matable si numchamp=1 donc il me renvoie les
info
du monchamp1 de matable
- select monchamp2 from matable si numchamp=2 donc il me renvoie les
info
du monchamp2 de matable
- select monchamp3 from matable si numchamp=3 donc il me renvoie les
info
du monchamp3 de matable
- ...

merci









Avatar
Synopsis
S.S.I. monchamp1, monchamp2, monchamp3 sont du même type
(sinon passe par un convert)

SELECT
CASE numchamp
WHEN 1 THEN monchamp1
WHEN 2 THEN monchamp2
WHEN 3 THEN monchamp3
END AS monChamp
FROM maTable


"AXL" a écrit dans le message de
news:u%
bonjour,

Je voudrais faire un select sur une colonne en fonction d'un parametre
envoyé

je m'explique

create procedure maproc
numchamp varchar(2)='1'

as

select monchamp+numchamp from matable

.....

donc en fait ma requete est :
- select monchamp1 from matable si numchamp=1 donc il me renvoie les info
du monchamp1 de matable
- select monchamp2 from matable si numchamp=2 donc il me renvoie les info
du monchamp2 de matable
- select monchamp3 from matable si numchamp=3 donc il me renvoie les info
du monchamp3 de matable
- ...

merci





Avatar
Raphael
monchamp1,2 et 3 c'est des champs ou des lignes (enregistrement)

soit... voilà le code:
<?php
{
$req = mysql_query("select * from matable where numchamp");


if (mysql_num_rows($req)==0)
{
echo("Aucune réponse !");
}

else
{
while($ligne = mysql_fetch_array($req))
{

$monchamp1 = $ligne["monchamp1"];
$monchamp2 = $ligne["monchamp2"];
$monchamp3 = $ligne["monchamp3"];
$numchamp = $ligne["numchamp"];

if ($numchamp == "1")
echo("$moncamp1");
if ($numchamp == "2")
echo("$moncamp2");
if ($numchamp == "3")
echo("$moncamp3");
}
}
}
?>

"AXL" a écrit dans le message de
news:u%
bonjour,

Je voudrais faire un select sur une colonne en fonction d'un parametre
envoyé

je m'explique

create procedure maproc
numchamp varchar(2)='1'

as

select monchamp+numchamp from matable

.....

donc en fait ma requete est :
- select monchamp1 from matable si numchamp=1 donc il me renvoie les info
du monchamp1 de matable
- select monchamp2 from matable si numchamp=2 donc il me renvoie les info
du monchamp2 de matable
- select monchamp3 from matable si numchamp=3 donc il me renvoie les info
du monchamp3 de matable
- ...

merci