Avec le langage de développement précédent, son SQL permettait de remplir
des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec
FROM Produit
GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon la
date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même
chose ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
tj
je te dirais sur oracle tu as le decode et le case mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
"Real Phil" a écrit dans le message de groupe de discussion : R2cYi.3150$
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec FROM Produit GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon la date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même chose ?
Réal Phil
je te dirais sur oracle tu as le decode et le case
mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
"Real Phil" <_pasde_Spam_realp@ultra.ca> a écrit dans le message de groupe
de discussion : R2cYi.3150$625.6220@weber.videotron.net...
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir
des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec
FROM Produit
GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon
la
date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même
chose ?
je te dirais sur oracle tu as le decode et le case mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
"Real Phil" a écrit dans le message de groupe de discussion : R2cYi.3150$
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec FROM Produit GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon la date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même chose ?
Réal Phil
Roumegou Eric
tj a formulé ce mercredi :
je te dirais sur oracle tu as le decode et le case mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres fonctions en wlangage et les utiliser dans la requete ????
Meme si je trouve que le principe n'est pas à recommander car s'éloigner du standard sql n'est pas une bonne chose à mon avis.
"Real Phil" a écrit dans le message de groupe de discussion : R2cYi.3150$
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec FROM Produit GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon la date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même chose ?
Réal Phil
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
tj a formulé ce mercredi :
je te dirais sur oracle tu as le decode et le case
mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres
fonctions en wlangage et les utiliser dans la requete ????
Meme si je trouve que le principe n'est pas à recommander car
s'éloigner du standard sql n'est pas une bonne chose à mon avis.
"Real Phil" <_pasde_Spam_realp@ultra.ca> a écrit dans le message de groupe de
discussion : R2cYi.3150$625.6220@weber.videotron.net...
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir
des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec
FROM Produit
GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon
la
date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même
chose ?
Réal Phil
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
je te dirais sur oracle tu as le decode et le case mais HF debutant dans le SQL, je pense pas que ce genre de chose existe.
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres fonctions en wlangage et les utiliser dans la requete ????
Meme si je trouve que le principe n'est pas à recommander car s'éloigner du standard sql n'est pas une bonne chose à mon avis.
"Real Phil" a écrit dans le message de groupe de discussion : R2cYi.3150$
Bonjour,
Avec le langage de développement précédent, son SQL permettait de remplir des colonnes selon certaines conditions dont voici un exemple simple.
SELECT Fournisseur, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act,QteAchat,0)) AS Qte_AnAct, SUM(IIF(YEAR(DteAchat)=YEAR(AN_Prec,QteAchat,0)) AS Qte_AnPrec FROM Produit GROUP by Fournisseur
Avec ce code, chaque colonne Qte_AnAct et Qte_AnPrec se remplissent selon la date d'achat de chaque produit.
Est-ce qu'une astuce existe en SQL de Windev pour arriver à faire la même chose ?
Réal Phil
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
mat
Salut Réal,
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas aussi élégant mais devrait être assez efficace. Peut-être un expert SQL 92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit), résultat dans une source de donnée: select idaccount, sum(amount) as CurrYear, 0 as PrevYears from journal where date >= '20070101' // resp. comparer à YEAR(AN_Act) group by idaccount union select idaccount, 0 as CurrYear, sum(amount) as prevYears from journal where date < '20070101' // resp. comparer à YEAR(AN_Prec) group by idaccount order by idaccount
2) Totalisation select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears FROM maSourceDonnees group by idaccount order by idaccount
Salutations Mat
Salut Réal,
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je
pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas
correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas
aussi élégant mais devrait être assez efficace. Peut-être un expert SQL
92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit),
résultat dans une source de donnée:
select idaccount, sum(amount) as CurrYear, 0 as PrevYears
from journal
where date >= '20070101' // resp. comparer à YEAR(AN_Act)
group by idaccount
union
select idaccount, 0 as CurrYear, sum(amount) as prevYears
from journal
where date < '20070101' // resp. comparer à YEAR(AN_Prec)
group by idaccount
order by idaccount
2) Totalisation
select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears
FROM maSourceDonnees
group by idaccount
order by idaccount
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas aussi élégant mais devrait être assez efficace. Peut-être un expert SQL 92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit), résultat dans une source de donnée: select idaccount, sum(amount) as CurrYear, 0 as PrevYears from journal where date >= '20070101' // resp. comparer à YEAR(AN_Act) group by idaccount union select idaccount, 0 as CurrYear, sum(amount) as prevYears from journal where date < '20070101' // resp. comparer à YEAR(AN_Prec) group by idaccount order by idaccount
2) Totalisation select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears FROM maSourceDonnees group by idaccount order by idaccount
Salutations Mat
mat
Roumegou Eric wrote: ...
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres fonctions en wlangage et les utiliser dans la requete ????
...
Bonsoir Eric,
si tu sais comment, je suis preneur. Dans mon WD10, je ne peux même pas imbriquer des fonctions ce qui limite énormément l'usage de requêtes pour certaines tâches. Peut-être un raison de bouger vers WD12 :-)
Salutations Mat
Roumegou Eric wrote:
...
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres
fonctions en wlangage et les utiliser dans la requete ????
...
Bonsoir Eric,
si tu sais comment, je suis preneur. Dans mon WD10, je ne peux même pas
imbriquer des fonctions ce qui limite énormément l'usage de requêtes
pour certaines tâches. Peut-être un raison de bouger vers WD12 :-)
j'avais cru comprendre qu'en HF on pouvait meme créer ses propres fonctions en wlangage et les utiliser dans la requete ????
...
Bonsoir Eric,
si tu sais comment, je suis preneur. Dans mon WD10, je ne peux même pas imbriquer des fonctions ce qui limite énormément l'usage de requêtes pour certaines tâches. Peut-être un raison de bouger vers WD12 :-)
Salutations Mat
Real Phil
Salut Mat,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Tu as tout à fait raison pour cette parenthèse. Très bonne observation. ..résultat de code tapé aux p'tites heures du matin après une dure journée.. ;-)
Ta suggestion de requête en deux temps est excellente et fonctionne à merveille. Cela fera très bien l'affaire en attendant la WD12.
Merci beaucoup, c'est très apprécié.
Réal Phil
"mat" a écrit dans le message de news:
Salut Réal,
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas aussi élégant mais devrait être assez efficace. Peut-être un expert SQL 92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit), résultat dans une source de donnée: select idaccount, sum(amount) as CurrYear, 0 as PrevYears from journal where date >= '20070101' // resp. comparer à YEAR(AN_Act) group by idaccount union select idaccount, 0 as CurrYear, sum(amount) as prevYears from journal where date < '20070101' // resp. comparer à YEAR(AN_Prec) group by idaccount order by idaccount
2) Totalisation select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears FROM maSourceDonnees group by idaccount order by idaccount
Salutations Mat
Salut Mat,
SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Tu as tout à fait raison pour cette parenthèse. Très bonne observation.
..résultat de code tapé aux p'tites heures du matin après une dure journée..
;-)
Ta suggestion de requête en deux temps est excellente et fonctionne à
merveille.
Cela fera très bien l'affaire en attendant la WD12.
Merci beaucoup, c'est très apprécié.
Réal Phil
"mat" <NoSPAM-mnobs@bluemail.ch> a écrit dans le message de
news:5peqlqFqukrfU1@mid.individual.net...
Salut Réal,
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je
pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas
correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas
aussi élégant mais devrait être assez efficace. Peut-être un expert SQL
92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit),
résultat dans une source de donnée:
select idaccount, sum(amount) as CurrYear, 0 as PrevYears
from journal
where date >= '20070101' // resp. comparer à YEAR(AN_Act)
group by idaccount
union
select idaccount, 0 as CurrYear, sum(amount) as prevYears
from journal
where date < '20070101' // resp. comparer à YEAR(AN_Prec)
group by idaccount
order by idaccount
2) Totalisation
select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears
FROM maSourceDonnees
group by idaccount
order by idaccount
Tu as tout à fait raison pour cette parenthèse. Très bonne observation. ..résultat de code tapé aux p'tites heures du matin après une dure journée.. ;-)
Ta suggestion de requête en deux temps est excellente et fonctionne à merveille. Cela fera très bien l'affaire en attendant la WD12.
Merci beaucoup, c'est très apprécié.
Réal Phil
"mat" a écrit dans le message de news:
Salut Réal,
je pense que tu devras attendre la sortie de WD12 pour cela. En plus, je pense qu'il manque une parenthèse sinon le IIF ne fonctionne pas correctement : SUM(IIF(YEAR(DteAchat)=YEAR(AN_Act),QteAchat,0))
Voilà un exemple comment je ferais la chose sur HF qui n'est certes pas aussi élégant mais devrait être assez efficace. Peut-être un expert SQL 92 sait faire en une seule requête.... :-)
1) Requête de sélection, donnera 2 lignes par compte (ou produit), résultat dans une source de donnée: select idaccount, sum(amount) as CurrYear, 0 as PrevYears from journal where date >= '20070101' // resp. comparer à YEAR(AN_Act) group by idaccount union select idaccount, 0 as CurrYear, sum(amount) as prevYears from journal where date < '20070101' // resp. comparer à YEAR(AN_Prec) group by idaccount order by idaccount
2) Totalisation select idaccount, sum(CurYear) as CurrYear, sum(PrevYears) as PrevYears FROM maSourceDonnees group by idaccount order by idaccount
Salutations Mat
b.engelmajer
On peut ruser en utilisant la valeur renvoyer par la recherche de l'année en début de date. QteAchat est pultiplié par 0 ou 1 selon la présence ou de l'année de l'année.
Un exemple testé chez moi: SELECT Prix.Date AS Date Prix.Tarif AS Tarif PATINDEX('2006%', Prix.Date) * Prix.Tarif AS Prix_2006, PATINDEX('2007%', Prix.Date) * Prix.Tarif AS Prix_2007 FROM Prix
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
On peut ruser en utilisant la valeur renvoyer par la recherche de
l'année en début de date. QteAchat est pultiplié par 0 ou 1 selon la
présence ou de l'année de l'année.
Un exemple testé chez moi:
SELECT
Prix.Date AS Date
Prix.Tarif AS Tarif
PATINDEX('2006%', Prix.Date) * Prix.Tarif AS Prix_2006,
PATINDEX('2007%', Prix.Date) * Prix.Tarif AS Prix_2007
FROM
Prix
Une adaptation possible pour la requête :
SELECT
Fournisseur,
PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct,
PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec,
FROM
Produit
GROUP BY
Fournisseur
On peut ruser en utilisant la valeur renvoyer par la recherche de l'année en début de date. QteAchat est pultiplié par 0 ou 1 selon la présence ou de l'année de l'année.
Un exemple testé chez moi: SELECT Prix.Date AS Date Prix.Tarif AS Tarif PATINDEX('2006%', Prix.Date) * Prix.Tarif AS Prix_2006, PATINDEX('2007%', Prix.Date) * Prix.Tarif AS Prix_2007 FROM Prix
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
mat
wrote: ...
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
...
c'est une superbe solution et je m'en servirai aussi. Merci.
Mat
b.engelmajer@gmail.com wrote:
...
Une adaptation possible pour la requête :
SELECT
Fournisseur,
PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct,
PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec,
FROM
Produit
GROUP BY
Fournisseur
...
c'est une superbe solution et je m'en servirai aussi. Merci.
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
...
c'est une superbe solution et je m'en servirai aussi. Merci.
Mat
Real Phil
a écrit...
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
Superbe astuce ! En modifiant légèrement le code j'obtiens mes résultats avec un minimum de code.
Vraiment Formidable !
Réal Phil
<b.engelmajer@gmail.com> a écrit...
Une adaptation possible pour la requête :
SELECT
Fournisseur,
PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct,
PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec,
FROM
Produit
GROUP BY
Fournisseur
Superbe astuce !
En modifiant légèrement le code j'obtiens mes résultats avec un minimum de
code.
Une adaptation possible pour la requête : SELECT Fournisseur, PATINDEX(AN_Act +'%',DteAchat) * QteAchat AS Qte_AnAct, PATINDEX(AN_Prec+'%',DteAchat) * QteAchat AS Qte_AnPrec, FROM Produit GROUP BY Fournisseur
Superbe astuce ! En modifiant légèrement le code j'obtiens mes résultats avec un minimum de code.
Vraiment Formidable !
Réal Phil
b.engelmajer
J'utilise cette astuce depuis longtemps sous mySql de façon plus simple avec un simple test sur l'égalité de 2 valeurs.
Ex: COUNT(population.sexe='F') as NbeFemme COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des tableaux de données! Classe d'âge, intervalle de chiffres d'affaires,...
J'utilise cette astuce depuis longtemps sous mySql de façon plus
simple avec un simple test sur l'égalité de 2 valeurs.
Ex:
COUNT(population.sexe='F') as NbeFemme
COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des
tableaux de données!
Classe d'âge, intervalle de chiffres d'affaires,...
J'utilise cette astuce depuis longtemps sous mySql de façon plus simple avec un simple test sur l'égalité de 2 valeurs.
Ex: COUNT(population.sexe='F') as NbeFemme COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des tableaux de données! Classe d'âge, intervalle de chiffres d'affaires,...
mat
wrote:
J'utilise cette astuce depuis longtemps sous mySql de façon plus simple avec un simple test sur l'égalité de 2 valeurs.
Ex: COUNT(population.sexe='F') as NbeFemme COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des tableaux de données! Classe d'âge, intervalle de chiffres d'affaires,...
malheureusement count(rectype ) ne passe pas en WD10.
Concernant intervalle de chiffre d'affaires, j'ai un état de table croisé que je n'ai réussi à utiliser qu'avec des périodes d'une année, 2007, 2006, 2005, etc. Mais comment je fais si la période de base va du 01/10/2006 au 30/09/2007 et que je veux les chiffres des périodes précédentes, an-1, an-2, an-3, etc? Merci d'avance pour une idée...
b.engelmajer@gmail.com wrote:
J'utilise cette astuce depuis longtemps sous mySql de façon plus
simple avec un simple test sur l'égalité de 2 valeurs.
Ex:
COUNT(population.sexe='F') as NbeFemme
COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des
tableaux de données!
Classe d'âge, intervalle de chiffres d'affaires,...
malheureusement count(rectype ) ne passe pas en WD10.
Concernant intervalle de chiffre d'affaires, j'ai un état de table
croisé que je n'ai réussi à utiliser qu'avec des périodes d'une année,
2007, 2006, 2005, etc. Mais comment je fais si la période de base va du
01/10/2006 au 30/09/2007 et que je veux les chiffres des périodes
précédentes, an-1, an-2, an-3, etc?
Merci d'avance pour une idée...
J'utilise cette astuce depuis longtemps sous mySql de façon plus simple avec un simple test sur l'égalité de 2 valeurs.
Ex: COUNT(population.sexe='F') as NbeFemme COUNT(population.sexe='H') as nbeHomme
Le COUNT sur un test logique permet de fabriquer facilement des tableaux de données! Classe d'âge, intervalle de chiffres d'affaires,...
malheureusement count(rectype ) ne passe pas en WD10.
Concernant intervalle de chiffre d'affaires, j'ai un état de table croisé que je n'ai réussi à utiliser qu'avec des périodes d'une année, 2007, 2006, 2005, etc. Mais comment je fais si la période de base va du 01/10/2006 au 30/09/2007 et que je veux les chiffres des périodes précédentes, an-1, an-2, an-3, etc? Merci d'avance pour une idée...