4
La requête suivante fonctionne comme prévu.Transpose les colonnes en lignes
Mais comment puis-je obtenir les résultats dans les lignes qui sont affichées dans les colonnes?
select curdate() AS one,
date_sub(curdate(), interval 15 day) AS two
, date_sub(curdate(), interval 30 day) AS three
, date_sub(curdate(), interval 45 day) AS four
, date_sub(curdate(), interval 60 day) AS five
, date_sub(curdate(), interval 75 day) AS six
, date_sub(curdate(), interval 90 day) AS seven
;
| one | two | three | four | five | six | seven |
+------------+------------+------------+------------+------------+------------+------------+
| 2010-09-27 | 2010-09-12 | 2010-08-28 | 2010-08-13 | 2010-07-29 | 2010-07-14 | 2010-06-29 |
Résultats attendus dans une rangée:
one 2010-09-27
two 2010-09-12
three 2010-08-28
four 2010-08-13
five 2010-07-29
six 2010-07-14
seven 2010-06-29
Je pense que cela ne fonctionne que si vos colonnes sont les mêmes types de données. Je reçois cette erreur: "La conversion a échoué lors de la conversion de la valeur varchar 'fieldx' en type de données int. ' – Misi
@Misi Vous auriez besoin de convertir la colonne numérique en chaîne. –
Avez-vous un SP qui fait cela? parce que j'ai besoin d'extraire des données dynamiques en ne connaissant que le nom de la table. Et comment puis-je transposer si j'ai plusieurs lignes? – Misi