|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Expert Confirmé
![]() Développeur informatique Inscription : février 2005 Messages : 2 986 ![]() |
Bonjour,
Je dois effectuer un requête avec un PIVOT. Pas de problème pour la syntaxe mais le problème c'est que les champs sur laquelle je dois faire le PIVOT est dynamique. Il y a une solution qui est d'utiliser un EXECUTE en mettant la requête dans une chaine de caractère plus concaténation mais c'est pas terrible. Dans le IN() du PIVOT il n'est pas possible de placer de variable ni de SELECT. Y a t'il une solution à ce problème ? Merci.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 959 ![]() |
Non pas de PIVOT dynamique. Seule possibilité c'est de faire du SQL dynamique. Reste que PIVOT est une hérésie et ne fait que pomper des ressources au server SQL pour faire de la cosmétique. Ce serait plus intelligent de faire cela directement sur le client (comme excel le fait pas exemple).
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#3 | |
|
Expert Confirmé
![]() Développeur informatique Inscription : février 2005 Messages : 2 986 ![]() |
Citation:
.Bon c'est ce que je pensais il me semble qu'il soit possible de mettre des champs dynamiquement dans le IN du PIVOT.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com