Analyse croisée avec Transact-SQL

dodo1979
Messages postés
2
Date d'inscription
mardi 13 décembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005
- 19 déc. 2005 à 18:04
cs_majidali
Messages postés
5
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
13 mai 2006
- 22 févr. 2006 à 00:22
Salut tout le monde, je suis débutant en SQL server 2000 et je cherche
la clause T-SQL qui permet de faire une analyse croisée dans SQL Server

Un tutorial ou un cours me fera encore plus du bien



Merci de votre aide

3 réponses

aieeeuuuuu
Messages postés
698
Date d'inscription
jeudi 16 janvier 2003
Statut
Membre
Dernière intervention
20 mai 2011
2
20 déc. 2005 à 10:28
salut

qu'entends tu par analyse croisée ?
0
dodo1979
Messages postés
2
Date d'inscription
mardi 13 décembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005

20 déc. 2005 à 13:51
une requete qui retourne un tableau à deux dimension.

Avec ACCESS la clause est TRANSFORM ... SELECT ...PIVOT

je cherche l'équivalent dans SQL server 2000



Merci de votre aide
0
cs_majidali
Messages postés
5
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
13 mai 2006

22 févr. 2006 à 00:22
slt les camarades

j'ai une fct qui fait ce travail(tableau croisé en sql)

function WriteTabCroise(sSQL, Titre)
'Génére automatiquement des tableaux croisés en fonction de la requête SQL


' sSQL = Requete SQL
' Titre = Titre du tableau

Set Connection = Server.CreateObject("ADODB.Connection")
Set RecordSet = Server.CreateObject("ADODB.RecordSet")

Connection.connectionString = DBPath
Connection.Open


if Titre <> "" then
Response.write "
<Center>" & Titre & "</Center>
" & vbcrlf
End If


RecordSet.Open sSQL, Connection, 3, 3

if RecordSet.EOF = false then
Response.write "\"
Response.write \"----
\" & vbcrlf

'Création des collones
for each rsfield in recordset.Fields
Response.write \"" & rsfield.Name & ", \" & vbcrlf
next
Response.write \"\" & vbcrlf

'Affichage de chaque ligne
Do while not RecordSet.EOF

Response.write \"----
\" & vbcrlf
i = 0
For each RecordSetItem in RecordSet.Fields
i = i + 1
if i=1 then
Response.write \"" & vbcrlf
else
Response.write ", \" & vbcrlf
end if

if isnull(RecordSetItem) = true then
Texte = \"-\"
else
Texte = RecordSetItem
if isnumeric(RecordSetItem) = true then
if RecordSetItem <> 0 then
Texte = \" \" & Texte & \" \" & vbcrlf
end if
else
Texte = \"\" & Texte & \"\" & vbcrlf
end if
end if

Response.write Texte
Response.write \"</TD>\" & vbcrlf
next

Response.write \"\" & vbcrlf
RecordSet.MoveNext
Loop
Response.write "

" & vbcrlf
end if
RecordSet.Close
Connection.Close
Set Connection = nothing
Set RecordSet = nothing

End function
0