Accueil > > > SQL SERVER - TESTER SI UNE DATE TRANSMISE EST BISSEXTILE OU NON
SQL SERVER - TESTER SI UNE DATE TRANSMISE EST BISSEXTILE OU NON
Information sur la source
Description
Dans le cadre d'une question posée sur ce forum, j'ai développé une fonction SQL Server permettant de tester si une années transmise est Bissextile ou non. La règle pour une année bissextile est disponible ici : - http://dispourquoipapa.free.fr/histoire/hi0010.htm Pour simplifier toutes les années divisibles par 4 sont bissextiles sauf si on tombe sur un centenaire. Le seul cas ou une année centenaire est bissextile est lorsque celle-ci est divisible par 400.
Source
- ---------------------------------------------------------------------
- SET QUOTED_IDENTIFIER ON
- GO
- SET ANSI_NULLS ON
- GO
-
- ---------------------------------------------------------------------
- ALTER FUNCTION TEST_BISSEXTILE
- (
- @YEAR INT
- )
- RETURNS BIT
- AS
- -- Vérification si l'année transmise est une année bissextile
-
- BEGIN
- -- @YEAR est l'année considérée
- -- RENVOI 1 SI VRAI ET 0 SI FAUX
-
- DECLARE @RESULTAT BIT
- SET @RESULTAT = 0
- IF ISNUMERIC(@YEAR)=0
- RETURN 0
-
- DECLARE @RESTESECULAIRE INT
- DECLARE @RESTEBISSEXTILE INT
-
- SET @RESTESECULAIRE = @YEAR % 100
-
- IF @RESTESECULAIRE = 0
- BEGIN
- SET @RESTEBISSEXTILE = @YEAR % 400
-
- IF @RESTEBISSEXTILE = 0
- SET @RESULTAT = 1
- END
- ELSE
- BEGIN
- SET @RESTEBISSEXTILE = @YEAR % 4
-
- IF @RESTEBISSEXTILE = 0
- SET @RESULTAT = 1
- END
-
- RETURN @RESULTAT
-
- END
-
- ---------------------------------------------------------------------
- GO
- SET QUOTED_IDENTIFIER OFF
- GO
- SET ANSI_NULLS ON
- GO
-
- ---------------------------------------------------------------------
-
- -- Pour tester cette fonction :
-
- SELECT dbo.TEST_BISSEXTILE(1996) AS BISSEXTILE
- -- et
- SELECT dbo.TEST_BISSEXTILE(2001) AS BISSEXTILE
---------------------------------------------------------------------
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
---------------------------------------------------------------------
ALTER FUNCTION TEST_BISSEXTILE
(
@YEAR INT
)
RETURNS BIT
AS
-- Vérification si l'année transmise est une année bissextile
BEGIN
-- @YEAR est l'année considérée
-- RENVOI 1 SI VRAI ET 0 SI FAUX
DECLARE @RESULTAT BIT
SET @RESULTAT = 0
IF ISNUMERIC(@YEAR)=0
RETURN 0
DECLARE @RESTESECULAIRE INT
DECLARE @RESTEBISSEXTILE INT
SET @RESTESECULAIRE = @YEAR % 100
IF @RESTESECULAIRE = 0
BEGIN
SET @RESTEBISSEXTILE = @YEAR % 400
IF @RESTEBISSEXTILE = 0
SET @RESULTAT = 1
END
ELSE
BEGIN
SET @RESTEBISSEXTILE = @YEAR % 4
IF @RESTEBISSEXTILE = 0
SET @RESULTAT = 1
END
RETURN @RESULTAT
END
---------------------------------------------------------------------
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
---------------------------------------------------------------------
-- Pour tester cette fonction :
SELECT dbo.TEST_BISSEXTILE(1996) AS BISSEXTILE
-- et
SELECT dbo.TEST_BISSEXTILE(2001) AS BISSEXTILE
Conclusion
Bon Coding
Romelard Fabrice.
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
sqlserver datetime [ par koukou09 ]
Salut, je veux faire une insertion des données dans sqlserver à partir d'un frame dans parmi les composant une date qui est définit comme type date
SOS Affichage de la dernier date via SQLServer [ par inghoudhoud ]
Bonjour je travail sur une base de donnée sqlServer j'enregistre les donnes plus qu'une fois et je veux affiché les dernier donnée enregistré c a di
probleme de Requete Imbriqué [ par jul13n ]
Bonjour, J'ai un soucis avec une requête sql qui me pose énormément de difficulté . Je souhaiterai réaliser une requête imbriqué de la manière suivant
format de la date retourné par dateAdd() ? [ par yosboss ]
Bonjour, je travail sur MS SQL Server, et je souhaite exécuter des requêtes avec un WHERE sur la date ... ce que je veux, c'est d'avoir les lignes q
calcule entre deux date [ par keitam ]
Slt a tous, Je suis à mon premier mois d'access 2007, je veux savoir comment calculer la durée d'un travailleur dans une entreprise à partir de sa dat
affichage par jour [ par uboot76 ]
bonjour J'aurais besoin de votre aide pour une requête sql. Mon but est d'avoir Salle Lundi Mardi .... début fin p
CONVERTIR UNE DATE DANS UNE REQUETE SQL [ par castapdl ]
Bonjour, Je tente de forcer la reqête sql suivante : [quote]SELECT t.ACCOUNTRP Client,f.NAME1 Nom,f.CATEGORY REP,f.TELNUMBER Tél,f.FAXNUMBER Fax, t.DA
Traiter des données en doubles, en triples dans un même requête [ par juliaLRJ75 ]
Bonjour, Après maintes recherches je ne trouve pas la simplification miracle de mes requêtes, donc si quelqu'un a une idée... Voilà je récupére dans
creation de procedure stocké [ par ahmedmahdibenjemaa ]
bonjours a tous, avant tous je voudrai vous remerciez en s'intéressant a ce sujet. je n'arrive pas à créer des procédures stockées. j'ai suivi pas ma
Convertir une colonne Datetime en période découpée en minute [ par Ledobs ]
Bonjour à tous, j'ai effectué une recherche sur le forum mais n'ai rien trouvé pour répondre à ma questionnement. Comme je suis un peu pressé dans le
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Forum
BESOIN D'UN BIBESOIN D'UN BI par michimichid
Cliquez pour lire la suite par michimichid
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|