J'utilise une requête de tableau croisé pour mes données. Mais maintenant je dois filtrer la date en fonction de la date, puis la convertir en tableau croisé. Mais je pense que ce n'est pas possible. J'ai également lu la documentation de postgresql mais n'ai rien trouvé en rapport avec elle. Est-ce que quelqu'un peut confirmer cela? Ci-dessous est la requête que j'essaye de courir mais donne l'erreur:requête de tableau croisé peut avoir une date dans où condition?
SELECT * FROM crosstab('SELECT a.name, al.type, COALESCE(sum(a.amt),0) as amt FROM account a where date(a.vdate)>='07-30-2017' and date(a.vdate)<='08-31-2017' group by a.name, a.type order by a.name',$$VALUES ('type1'), ('type2')$$) AS ct ("name" text, "type1" decimal, "type2" decimal))
Quand j'emploie sans date dans où partie cela fonctionne.
Merci d'avance.
Avez-vous essayé double indiquant la date de filtrage? 'SELECT * FROM crosstab ('CHOISIR un.nom, al.type, COALESCE (somme (a.amt), 0) comme amt FROM compte a où date (a.vdate)> =' '07-30-2017' 'et date (a.vdate) <=' '08-31-2017' 'groupe par a.name, a.type ordre par a.name', $$ VALUES ('type1'), ('type2') $ $) AS ct ("nom" texte, "type1" décimal, "type2" décimal)) ' –
Merci beaucoup :) cela a fonctionné. – charmi