Bonjour,
je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en
cours.
J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve
plus où.
Merci de votre aide.
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
Patrice
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on utilise une table de dates notamment dès que tu voudras associer des attributs à ces dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news:
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on utilise
une table de dates notamment dès que tu voudras associer des attributs à ces
dates...
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: uRx6BHRaGHA.4620@TK2MSFTNGP04.phx.gbl...
Bonjour,
je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en
cours.
J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
retrouve
plus où.
Merci de votre aide.
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on utilise une table de dates notamment dès que tu voudras associer des attributs à ces dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news:
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
SQLpro [MVP]
Dominique Peralta a écrit :
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
http://sqlpro.developpez.com/cours/gestiontemps/
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Dominique Peralta a écrit :
Bonjour,
je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en
cours.
J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve
plus où.
Merci de votre aide.
http://sqlpro.developpez.com/cours/gestiontemps/
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de l'année en cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
http://sqlpro.developpez.com/cours/gestiontemps/
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Dominique Peralta
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait que je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news: > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne > retrouve > plus où. > Merci de votre aide. > >
Je voudrais faire une jointure sur une sous-requête qui me renverrait la
liste des jours de l'année en cours. Si je crée une table, il faudrait que
je pense à la mettre à jour tous les ans :-(
J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien
compliqué par rapport à ce que je veux faire.
Merci.
"Patrice" <scribe@chez.com> a écrit dans le message de
news:Ou5f4QRaGHA.1348@TK2MSFTNGP05.phx.gbl...
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates...
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: uRx6BHRaGHA.4620@TK2MSFTNGP04.phx.gbl...
> Bonjour,
> je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours.
> J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
> retrouve
> plus où.
> Merci de votre aide.
>
>
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait que je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news: > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne > retrouve > plus où. > Merci de votre aide. > >
Dominique Peralta
J'avais déjà parcouru ce cours, comme les autes du reste, mais je n'ai pas trouvé le SELECT tout simple qui liste les dates. Comme je suis sûr que t'as ça en stock, et que je suis pris par le temps, je pensais que tu aurais pu me donner la syntaxe ;-)
"SQLpro [MVP]" a écrit dans le message de news:%
Dominique Peralta a écrit : > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
retrouve
> plus où. > Merci de votre aide. > > http://sqlpro.developpez.com/cours/gestiontemps/
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
J'avais déjà parcouru ce cours, comme les autes du reste, mais je n'ai pas
trouvé le SELECT tout simple qui liste les dates. Comme je suis sûr que t'as
ça en stock, et que je suis pris par le temps, je pensais que tu aurais pu
me donner la syntaxe ;-)
"SQLpro [MVP]" <brouardf@club-internet.fr> a écrit dans le message de
news:%23hP42SRaGHA.4620@TK2MSFTNGP04.phx.gbl...
Dominique Peralta a écrit :
> Bonjour,
> je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours.
> J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
retrouve
> plus où.
> Merci de votre aide.
>
>
http://sqlpro.developpez.com/cours/gestiontemps/
A +
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
J'avais déjà parcouru ce cours, comme les autes du reste, mais je n'ai pas trouvé le SELECT tout simple qui liste les dates. Comme je suis sûr que t'as ça en stock, et que je suis pris par le temps, je pensais que tu aurais pu me donner la syntaxe ;-)
"SQLpro [MVP]" a écrit dans le message de news:%
Dominique Peralta a écrit : > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
retrouve
> plus où. > Merci de votre aide. > > http://sqlpro.developpez.com/cours/gestiontemps/
A +
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Patrice
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers une table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: %
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait que je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news: > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne > retrouve > plus où. > Merci de votre aide. > >
Rien ne t'empêche de mettre plus que l'année en cours dans cette table.
Sinon tu peux éventuellement créer une fonction qui remplira (avec une
simple boucle) une variable table avec les dates de l'année en cours avant
de la retourner ce qui permettrait éventuellement ensuite de passer vers une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS
BEGIN
DECLARE @j SMALLDATETIME
SET @jÊST(@Année AS VARCHAR(4))+'0101'
WHILE YEAR(@j)=@Année
BEGIN
INSERT INTO @t(Jour) VALUES (@j)
SET @jÚTEADD(day,1,@j)
END
RETURN
END
GO
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: %236CRKZRaGHA.3740@TK2MSFTNGP03.phx.gbl...
Je voudrais faire une jointure sur une sous-requête qui me renverrait la
liste des jours de l'année en cours. Si je crée une table, il faudrait que
je pense à la mettre à jour tous les ans :-(
J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien
compliqué par rapport à ce que je veux faire.
Merci.
"Patrice" <scribe@chez.com> a écrit dans le message de
news:Ou5f4QRaGHA.1348@TK2MSFTNGP05.phx.gbl...
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates...
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: uRx6BHRaGHA.4620@TK2MSFTNGP04.phx.gbl...
> Bonjour,
> je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours.
> J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
> retrouve
> plus où.
> Merci de votre aide.
>
>
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers une table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: %
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait que je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message de news: > Bonjour, > je voudrais, à partir d'un SELECT, faire afficher les dates de l'année
en
> cours. > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne > retrouve > plus où. > Merci de votre aide. > >
Dominique Peralta
C'est vrai que j'ai du mal à penser aux UDFs. Je vais faire comme ça. Merci beaucoup.
"Patrice" a écrit dans le message de news:
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: % > Je voudrais faire une jointure sur une sous-requête qui me renverrait la > liste des jours de l'année en cours. Si je crée une table, il faudrait
que
> je pense à la mettre à jour tous les ans :-( > J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien > compliqué par rapport à ce que je veux faire. > Merci. > > "Patrice" a écrit dans le message de > news: >> Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
>> >> Je ne sais pas exactement ce que tu veux faire mais généralement on > utilise >> une table de dates notamment dès que tu voudras associer des attributs
à
> ces >> dates... >> -- >> Patrice >> >> "Dominique Peralta" a écrit dans le message
de
>> news: >> > Bonjour, >> > je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
> en >> > cours. >> > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne >> > retrouve >> > plus où. >> > Merci de votre aide. >> > >> > >> >> > >
C'est vrai que j'ai du mal à penser aux UDFs.
Je vais faire comme ça.
Merci beaucoup.
"Patrice" <scribe@chez.com> a écrit dans le message de
news:OvThnJSaGHA.4416@TK2MSFTNGP04.phx.gbl...
Rien ne t'empêche de mettre plus que l'année en cours dans cette table.
Sinon tu peux éventuellement créer une fonction qui remplira (avec une
simple boucle) une variable table avec les dates de l'année en cours avant
de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS
BEGIN
DECLARE @j SMALLDATETIME
SET @jÊST(@Année AS VARCHAR(4))+'0101'
WHILE YEAR(@j)=@Année
BEGIN
INSERT INTO @t(Jour) VALUES (@j)
SET @jÚTEADD(day,1,@j)
END
RETURN
END
GO
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: %236CRKZRaGHA.3740@TK2MSFTNGP03.phx.gbl...
> Je voudrais faire une jointure sur une sous-requête qui me renverrait la
> liste des jours de l'année en cours. Si je crée une table, il faudrait
que
> je pense à la mettre à jour tous les ans :-(
> J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien
> compliqué par rapport à ce que je veux faire.
> Merci.
>
> "Patrice" <scribe@chez.com> a écrit dans le message de
> news:Ou5f4QRaGHA.1348@TK2MSFTNGP05.phx.gbl...
>> Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
>>
>> Je ne sais pas exactement ce que tu veux faire mais généralement on
> utilise
>> une table de dates notamment dès que tu voudras associer des attributs
à
> ces
>> dates...
>> --
>> Patrice
>>
>> "Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message
de
>> news: uRx6BHRaGHA.4620@TK2MSFTNGP04.phx.gbl...
>> > Bonjour,
>> > je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
> en
>> > cours.
>> > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
>> > retrouve
>> > plus où.
>> > Merci de votre aide.
>> >
>> >
>>
>>
>
>
C'est vrai que j'ai du mal à penser aux UDFs. Je vais faire comme ça. Merci beaucoup.
"Patrice" a écrit dans le message de news:
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: % > Je voudrais faire une jointure sur une sous-requête qui me renverrait la > liste des jours de l'année en cours. Si je crée une table, il faudrait
que
> je pense à la mettre à jour tous les ans :-( > J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien > compliqué par rapport à ce que je veux faire. > Merci. > > "Patrice" a écrit dans le message de > news: >> Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
>> >> Je ne sais pas exactement ce que tu veux faire mais généralement on > utilise >> une table de dates notamment dès que tu voudras associer des attributs
à
> ces >> dates... >> -- >> Patrice >> >> "Dominique Peralta" a écrit dans le message
de
>> news: >> > Bonjour, >> > je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
> en >> > cours. >> > J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne >> > retrouve >> > plus où. >> > Merci de votre aide. >> > >> > >> >> > >
SQLpro [MVP]
Dominique Peralta a écrit :
C'est vrai que j'ai du mal à penser aux UDFs. Je vais faire comme ça. Merci beaucoup.
C'est BEAUCOUP moins performant qu'une jointure en général...
En effet une fonction oblige à lire séquentiellement les données. Une jointure permet de lire les données d'après les index.
A +
"Patrice" a écrit dans le message de news:
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: %
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait
que
je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs
à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message
de
news:
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
en
cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Dominique Peralta a écrit :
C'est vrai que j'ai du mal à penser aux UDFs.
Je vais faire comme ça.
Merci beaucoup.
C'est BEAUCOUP moins performant qu'une jointure en général...
En effet une fonction oblige à lire séquentiellement les données.
Une jointure permet de lire les données d'après les index.
A +
"Patrice" <scribe@chez.com> a écrit dans le message de
news:OvThnJSaGHA.4416@TK2MSFTNGP04.phx.gbl...
Rien ne t'empêche de mettre plus que l'année en cours dans cette table.
Sinon tu peux éventuellement créer une fonction qui remplira (avec une
simple boucle) une variable table avec les dates de l'année en cours avant
de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS
BEGIN
DECLARE @j SMALLDATETIME
SET @jÊST(@Année AS VARCHAR(4))+'0101'
WHILE YEAR(@j)=@Année
BEGIN
INSERT INTO @t(Jour) VALUES (@j)
SET @jÚTEADD(day,1,@j)
END
RETURN
END
GO
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message de
news: %236CRKZRaGHA.3740@TK2MSFTNGP03.phx.gbl...
Je voudrais faire une jointure sur une sous-requête qui me renverrait la
liste des jours de l'année en cours. Si je crée une table, il faudrait
que
je pense à la mettre à jour tous les ans :-(
J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien
compliqué par rapport à ce que je veux faire.
Merci.
"Patrice" <scribe@chez.com> a écrit dans le message de
news:Ou5f4QRaGHA.1348@TK2MSFTNGP05.phx.gbl...
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs
à
ces
dates...
--
Patrice
"Dominique Peralta" <NOSPAMdp@planete-soft.fr> a écrit dans le message
de
news: uRx6BHRaGHA.4620@TK2MSFTNGP04.phx.gbl...
Bonjour,
je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
en
cours.
J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne
retrouve
plus où.
Merci de votre aide.
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
C'est vrai que j'ai du mal à penser aux UDFs. Je vais faire comme ça. Merci beaucoup.
C'est BEAUCOUP moins performant qu'une jointure en général...
En effet une fonction oblige à lire séquentiellement les données. Une jointure permet de lire les données d'après les index.
A +
"Patrice" a écrit dans le message de news:
Rien ne t'empêche de mettre plus que l'année en cours dans cette table. Sinon tu peux éventuellement créer une fonction qui remplira (avec une simple boucle) une variable table avec les dates de l'année en cours avant de la retourner ce qui permettrait éventuellement ensuite de passer vers
une
table si le besoin s'en fait sentir.
Quelque chose comme :
CREATE FUNCTION Jours(@Année INT) RETURNS @t TABLE(Jour SMALLDATETIME) AS BEGIN DECLARE @j SMALLDATETIME SET @jÊST(@Année AS VARCHAR(4))+'0101' WHILE YEAR(@j)=@Année BEGIN INSERT INTO @t(Jour) VALUES (@j) SET @jÚTEADD(day,1,@j) END RETURN END GO
-- Patrice
"Dominique Peralta" a écrit dans le message de news: %
Je voudrais faire une jointure sur une sous-requête qui me renverrait la liste des jours de l'année en cours. Si je crée une table, il faudrait
que
je pense à la mettre à jour tous les ans :-( J'avais jeté un oeil au lien que tu me donnes, mais tout cela est bien compliqué par rapport à ce que je veux faire. Merci.
"Patrice" a écrit dans le message de news:
Du côté de http://sqlpro.developpez.com/cours/gestiontemps/ sans
doute...
Je ne sais pas exactement ce que tu veux faire mais généralement on
utilise
une table de dates notamment dès que tu voudras associer des attributs
à
ces
dates... -- Patrice
"Dominique Peralta" a écrit dans le message
de
news:
Bonjour, je voudrais, à partir d'un SELECT, faire afficher les dates de
l'année
en
cours. J'ai déjà vu un truc comme cela dans des écrits à Fred, mais je ne retrouve plus où. Merci de votre aide.
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************