Accéder au contenu principal

Transposer des dates avec SQL

Nous avons une table 'journal' dans MySQL qui a une colonne 'cdate' de type date et qui est une clé primaire.

Le but est de transposer toutes les valeurs de la colonne d'une année dans le future.

Si on réussi a trouver la requête pour effectuer la transposition, on peut se heurter à une problème de duplication de clé. 

Mais une solution consiste d'abord à désactiver les clé primaire, puis d’effectuer la transposition et enfin de rétablir les clé en nettoyant les doublons éventuellement générés par la transposition.


-- supprime les clefs primaires, -- sans cela le requete suivante peut entrainer des erreurs -- si le cacul produit des doublons DROP PRIMARY KEY; -- effectue la transposition et -- pourraient generer les doublons UPDATE journal SET cdate = DATE_ADD(cdate, INTERVAL 1 YEAR); -- defini les clé primaires -- en supprimant les doublons ALTER IGNORE TABLE journal ADD PRIMARY KEY (cdate)


De façon général, on adaptera l’intervalle de transposition à sa guise selon la syntaxe de MySQL, et on utilisera DATE_SUB au lieu de DATE_ADD pour transposer dans le passé.



Commentaires

Posts les plus consultés de ce blog

Gérer les requêtes USSD sur un MoDem avec les commandes AT

Introduction L'USSD (Universal Structured Service D) est un service des réseaux télécoms defini dans 3GPP TS 02.90 et dans 3GPP TS 23.090. Il permet à un terminal mobile d'effectuer des requetes ou une suite de requete à l'operateur. Il est courament utiliser pour consulter le solde. Dans ce tutoriel nous apprendrons à effectuer des requetes USSD depuis une connection serie avec une modem. Pré requis Pour utiliserons pour ce faire: un modem GSM (Huawei E1552) bien sur avec une carte SIM (AIRTEL Burkina) un ordinateur auquel sera connecte le modem un terminal (minicom) pour dialoger avec le modem depuis l'ordinateur perl, pour encoder et decoder les PDU Demarche Nous allons consulter le solde du compte de l'utilisateur. Pour l'opérateur courant il faut composer le code USSD *160#. connecter le modem Connectez le modem au port USB de l'ordinateur et retrouvez ses port series logiciels. Notre modem créé trois ports series (/dev/t

IANA TCP UDP Ports

Port TCP UDP Description Status 0 UDP Reserved Official 0 TCP Programming technique for specifying system-allocated (dynamic) ports[2] Unofficial 1 TCP UDP TCP Port Service Multiplexer (TCPMUX) Official 2 TCP UDP CompressNET[3] Management Utility[4] Official 3 TCP UDP CompressNET[3] Compression Process[5] Official 4 TCP UDP Unassigned Official 5 TCP UDP Remote Job Entry Official 7 TCP UDP Echo Protocol Official 8 TCP UDP Unassigned Official 9 UDP Wake-on-LAN Unofficial 9 TCP UDP Discard Protocol Official 10 TCP UDP Unassigned Official 11 TCP UDP Active Users (systat service)[6][7] Official 12 TCP UDP Unassigned Official 13 TCP UDP Daytime Protocol (RFC 867) Official 14 TCP UDP Unassigned Official 15 TCP UDP Previously netstat service[6] Unofficial 16 TCP UDP Unassigned Official 17 TCP UDP Quote of the Day Official 18 TCP UDP Message Send Protocol Official 19 TCP UDP Character Generator Protocol (CHARGEN) Official 20 TCP UDP FTP data transfer Official 21 TCP FTP 

INTERUPTEUR CREPUSCULAIRE

BUT : contrôler l’allumage et l’institution d’une lampe électrique en fonction de l’intensité de la lumière ambiante. FONCTIONNEMENT : le potentiomètre RV2 règle la sensibilité à la lumière. S’il fait assez noir, la lampe s’allume. Si par contre,s' il y’a assez de lumière alors la lampe s’éteint. La résistance variable RV1 permet de régler le décalage entre le seuil d’allumage et le seuil d’instinction. INTERET : sécurité, automatisation et économie d’énergie. SCHEMAS :