Bonjour,
j'ai la table de données ci-dessous:
N° LARG
1 2500
2 2600
3 2600
4 2700
5 2500
J'aimerais un requête qui donne le résutat ci-dessous.
N° QTE LARG
1,5 2 2500
2,3 2 2600
4 1 2700
Merci d'avance pour votre aide.
Bonjour,
j'ai la table de données ci-dessous:
N° LARG
1 2500
2 2600
3 2600
4 2700
5 2500
J'aimerais un requête qui donne le résutat ci-dessous.
N° QTE LARG
1,5 2 2500
2,3 2 2600
4 1 2700
Merci d'avance pour votre aide.
çà marche mais je vois pas l'intérêt !!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 create table #tmp ( numeros varchar(50), qte int, larg int ) insert into #tmp (qte,larg) select count(*),larg from table1 group by larg DECLARE larg_cursor CURSOR FOR select [n°], larg from table1 declare @num varchar(5), @larg int OPEN larg_cursor FETCH NEXT FROM larg_cursor INTO @num,@larg WHILE @@FETCH_STATUS = 0 BEGIN update #tmp set numeros=numeros+@num+',' where larg=@larg FETCH NEXT FROM larg_cursor INTO @num,@larg END CLOSE larg_cursor DEALLOCATE larg_cursor -- enlever la dernière virgule update #tmp set numeros=substring(numeros,1,len(numeros)-1) where numeros<>'' select * from #tmp
A+
serge
Ce genre de chose ne doit JAMAIS être fait en SQl ni sur un serveur de BDR.
Lisez l'article que j'ai écrit à ce sujet :
http://sqlpro.developpez.com/cours/sqlaz/erreurs/#L9
A +
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager