Designed by NoKi !
73 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter





   

SQL : Equivalences entre Oracle et MySQL

Quelques fonctions de bases.





sebmafate
Combien d'entre-nous se sont un jour retrouvés le bec dans l'eau à la suite d'un changement de base ? Il faut dans les 3/4 du temps réécrire les requêtes, mais connaissez-vous les équivalences entre les principales bases ?


De quelles bases va-t-on parler ?

J'ai fait le choix de comparer dans un premier temps Oracle et MySQL car je connais bien ces deux environnements, je rajouterai TSQL, regroupant SQLServer et DB2, dans le futur, le temps pour moi d'en connaître un peu plus.
Nous allons donc comparer par groupe d'instructions les équivalences entre chaque langage.

Les opérateurs de manipulation de chaînes.

  Oracle MySQL
Concaténation chaîne1 || chaîne2 || ... concat(chaîne1, chaîne2, ...)
Longueur length(chaîne)
Partie gauche substr(chaîne, 1, n_caracteres) left(chaîne, n_caracteres)
Portion d'une chaîne substr(chaîne, debut, n_caracteres) substring(chaîne, debut, n_caracteres)
Partie droite substr(chaîne, length(chaîne) - n_caracteres) right(chaîne, n_caracteres)
Remplacement de chaîne replace(chaine, recherche, remplace)
Retrait des espaces à gauche ltrim(chaîne)
Retrait des espaces à droite rtrim(chaîne)
Retrait des espaces à gauche et à droite trim(chaîne)
Remplissage à gauche lpad(chaîne, caractère, longueur)
Remplissage à droite rpad(chaîne, caractère, longueur)
Mise en majuscule upper(chaîne) upper(chaîne) ou
ucase(chaine)
Mise en minuscule lower(chaîne) lower(chaîne) ou
lcase(chaine)

Manipulation de dates

  Oracle MySQL
Date système sysdate now()
Ajouter n jours à une date date + n dateadd(date, n)
Retirer n jours à une date date - n datesub(date, n)
Différence entre 2 dates (jours) date1 - date2 datediff(date1, date2)
Extraire le jour d'une date to_char(date, "dd") day(date)
Extraire le mois d'une date to_char(date, "mm") month(date)
Extraire l'année d'une date to_char(date, "yyyy") year(date)
Extraire la semaine d'une date to_char(date, "ww") week(date)
Extraire la semaine d'une date to_char(date, "ww") week(date)
Extraire l'heure to_char(date, "hh") hour(time)
Extraire les minutes to_char(date, "nn") minute(time)
Extraire les secondes to_char(date, "ss") second(time)

Les conversions

  Oracle MySQL
Nombre -> String to_char(nombre) cast(nombre as char)
String -> Nombre to_number(string) cast(string as int)
String -> Date to_date(string, "format")
ex: to_date("20030712", "yyyymmdd")
str_to_date(string, "format")
ex: str_to_date("20030712", "%Y%m%d")
Date-> String to_char(date, "format")
ex: to_char(sysdate, "yyyymmdd")
date_format(date,"format")
ex: date_format(now(), "%Y%m%d")

En résumé

On voit très bien au travers de ces 3 tableaux que Oracle et MySql n'utilise pas les mêmes instructions, le même vocabulaire. Mais, à quelques exceptions près, supporte tous les deux l'intégralité du standard SQL92. Pensez donc à utiliser les instructions communes le plus souvent possible.

Références

Vous trouvez les documentations de ces bases en suivant les liens suivants :

Pour pouvoir écrire dans ce forum, identifiez-vous !

 Lire  21/04/08 10:03 de amedlang1
est ce que c'est possible de faire ca: date = date -...
  • 21/04/08 19:57 de sebmafate Ca dépend... en Oracle ou en SqlSer...
  •   v1.3p © ASP-PHP.net 2002  

    sebmafate le 17/02/2004 (135 517 hits)
    Didier Téléchargez 1200 Partitions Gratuites !!!
    Au fil des news  
    Listes liées (dépendantes) : avec ou sans XMLHTTPR - Les délires «Ajax or not Ajax»
    Comme toujours, c'est à la suite d'un coup de pouce que je me suis décidé à faire ce tuto. Merci à ...
    Amélioration du Search MOSS : Les scopes - Quelques possibilités d'amélioration du Search
    Lorsqu'on installe le moteur de recherche de MOSS et qu'on le configure basiquement, on veut ...
    SharePoint - Lister les templates utilisés - Identifier les définitions utilisées par vos sites
    Un site SharePoint est créé à partir d'un modèle ou définition de site. Mais comment savoir après ...
    PowerShell - Profile avec la participation de mon ami Tigrou :)
    Adobe - Lancement de la CS4, tous à vos agendas !
    [MAJ] PHP - Fonctions de redimensionnement d'images - BD : redimensionner image + picto après upload
    Ajout de FONCTIONS de redimensionnement.
    PHP - Tchat PHP V2.1 sans base de donnée
    SharePoint et les statistiques d'utilisation - Comment obtenir des statistiques depuis SharePoint
    La mise en place de ferme SharePoint doit s'accompagner d'une notion de gouvernance. Cette notion ...
    Adobe - Nouvelles annonces Adobe sur le salon IBC 2008
    PHP - PHP TV emission 2 (septembre 2008)
    PHP - PDO ADMIN
    [MAJ] Inscription contrôlée à une NewsLetter ou Service - Abonnement avec confirmation et désabonnement
    Correction d'un point-virgule manquant (merci de m'avoir obligé à chercher JPierre) dans le module ...
    PHP - Premier lundi d'une semaine et d'une année
    JavaScript - Premier lundi d'une semaine et d'une année
    ASP - Premier lundi d'une semaine et d'une année
    Alphabet Radio et Code Morse - Alpha Zulu appelle Tango Charlie !
    Encoder-Décoder en "Alphabet Radio" ... "Alpha Zulu appelle Tango Charlie !" ou en Code Morse ... ...
    Filtrer les modèles de site SharePoint - Filtrer l'affichage des modèles de site SharePoint
    Je vous propose de découvrir à l'aide de cet article quels mécanismes peuvent vous permettent de ...
    ASP/PHP - Méthode de cryptage - par table de correspondance
    (ASP/PHP) Une méthode de cryptage de données par l'utilisation d'une "table de correspondance ...
    PHP - Listes liées (1 table) - version2
    JavaScript - Rendre Visible ou Invisible des éléments d'un form
    PHP - Listes liées (1 table) - version1
    JavaScript - Intercepter le click sur vidéo WMP ou flash SWF
    [MAJ] Une base de données sans base de données - Comment travailler avec des fichiers texte ?
    Modification du paramétrage du dossier à scanner dans le popup qui permet de sélectionner l'image.
    Jeux de l'été (et de 5) - Un jeu de Motus (mots de 8 lettres)
    C'est reparti pour un tour... Comme je venais de proposer un jeu de Mastermind, je me suis dit que, ...
    PowerShell - Extraire toutes les collections SharePoint en CSV
    PowerShell - Lister les collections pour une WebApp SharePoint
    PowerShell - Lister les utilisateurs d'un site SharePoint
    PowerShell - Connaître le code version de votre SharePoint
    Connaître la version de SharePoint installée - Comment savoir la version de SharePoint en cours
    Dans le cadre de la maintenance de plusieurs fermes SharePoint, il est indispensable de connaître ...
    PowerShell - Travailler avec une base de données SQL Server
    .NET - Visual Studio 2008 sur Facebook : çà rock's
    PowerShell - Ajouter des liens sur deux niveaux dans SharePoint
    Un petit annuaire perso avec photo - en PHP et MySQL
    Avoir des copains et des amis c'est bien que dis-je c'est même vital pour le bien être de chacun. ...
    Une base de données sans base de données - Comment travailler avec des fichiers texte ?
    Suite à une question sur le forum (les habitués me connaissent), je propose une mini-gestion de ...
    ASP/PHP : Affichage de données en tableau html - Afficher des données (BD, Array) dans un tableau
    Création d'un tableau "à la volée" pour afficher ses données. Affichage "en ligne" ou "en ...
    PowerShell - Ajouter une liste dans un site SharePoint
    Annuaire d'entreprise en PHP - Très pratique pour ne plus rien perdre
    Mon petit annuaire d'entreprise, je m'en sers tous les jours alors autant vous en faire profiter. ...
    PHP-MySQL : Formulaire - pour le script 'Bon anniversaire' de DB77
    Formulaire et script d'enregistrement pour le script « Bon anniversaire » de DB77 en PHP/MySQL ...
    .NET - Introducing Microsoft Silverlight 2.0, 2nd Edition
    PHP5 - Upload de fichiers - Classe PHP
    Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
    Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
      Scripts : Scripting | ASP-PHP | ASP.net | Divers
      Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
    v3 © Didier 2003   
     

    Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
     Groupes Utilisateurs Microsoft CodePPC DotNet Project Wygwam ASP-magazine MVP TechNet The Inquirer FR Codes Sources El Roubio