-
incrément par valeur
salam
je veux incrimenter une colone selon la valeur d'une autre colone par exemple si la valeur de colone2=1 then colone1=colone1+1 sinon colone1=colone1 en sachant la colone1 initialisé par 0:
table1
colone1 colone2
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3
j'ai fait une requete comme ca mais ce ne marche pas:
Code:
select IF( colone2=1,@trip_id:=@colone1 +1, @colone1 :=@colone1 ) as c from t1 join (SELECT @colone1 := 0) AS colone1 ')
SVP urgent.
merci.
-
Bonjour
Quel est le rapport avec Delphi ?
Quel est le besoin original ?
Quel est le SGBD ? Quel est le Provider ?
Qu'est-ce que ce SQL sans queue ni tête ?
:cristal:
Sinon, aucun sujet n'est urgent, la communauté ne répond que si elle le peut et si elle le veut !
Code:
SELECT Colone1, Colone2, CASE WHEN Colone2 = 1 THEN Colone1 + 1 ELSE Colone1 END AS Resultat FROM t1
Voici comme j'interprète votre explication fumeuse en ORACLE
-
salam et merci pour votre reponse.
j'ai une table mysql et je veux extraire un résultat par requete sql comme ca en delphi.
j'ai essayé ta requete envoyé mais il m'affiche (MEMO) en sachant que j'utilise une variable:@colone1 comme ca:
Code:
SELECT Colone1, Colone2, CASE WHEN @Colone2 = 1 THEN @Colone1 + 1 ELSE @Colone1 END AS Resultat FROM t1 join join (SELECT @colone1 := 0) AS colone1
-
Bonjour,
À quoi correspondent ces @ que le composant Delphi (dont on ne sait même pas la classe) ne doit pas reconnaitre ?
Pourquoi y à t'il une jointure (et d'ailleurs une double instruction join) dans votre code SQL et de plus elle me semble incomplète ?
Qu'est-ce que vous entendez par une variable @colone1 ?
P.S. la requête de ShaiLeTroll est tout à fait correcte (et ce même pour d'autres SGBD) mais j'ai du mal à en comprendre l'utilité :koi: