IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Firebird Discussion :

Division entière et Modulo


Sujet :

SQL Firebird

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    409
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 409
    Par défaut Division entière et Modulo
    Bonjour,
    Je m'appercois, et je suis etonne de voir qu'il n'y a pas de division entiere ou modulo dans interbase.
    J'imagine qu'il faut une udf pour remedier a cela ? Mais laquelle, sachant que mon appli sera multi-plateforme (Win et Linux).

  2. #2
    Membre Expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 052
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 052
    Par défaut
    Quel version d'interbase ? ou firebird ?

    Cherchez dans les UDF qui sont livré avec vous y trouverez votre bonheur...

    comme ceci par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    /*****************************************
     *
     *	d i v
     *
     *****************************************
     *
     * Functional description:
     *	Returns the quotient part of the division
     *	of the two input parameters.
     *
     *****************************************/
    DECLARE EXTERNAL FUNCTION div 
    	INTEGER, INTEGER
    	RETURNS DOUBLE PRECISION BY VALUE
    	ENTRY_POINT 'IB_UDF_div' MODULE_NAME 'ib_udf';
     
    /*****************************************
     *
     *	m o d
     *
     *****************************************
     *
     * Functional description:
     *	Returns the remainder part of the 
     *	division of the two input parameters.
     *
     *****************************************/
    DECLARE EXTERNAL FUNCTION mod 
    	INTEGER, INTEGER
    	RETURNS DOUBLE PRECISION BY VALUE
    	ENTRY_POINT 'IB_UDF_mod' MODULE_NAME 'ib_udf';
    Qui se trouvent dans l'UDF : IB_UDF

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    409
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 409
    Par défaut
    Merci barbibulle, j'ai trouve la dll db_udf. Comment savoir ce qu'il y a dedans ? Je ne trouve aucune aide portant sur ceci !

  4. #4
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    409
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 409
    Par défaut
    Hop hop hop ! J'ai rien dit, autant pour moi.
    J'ai trouve tout ce qu'il me faut dans
    Developpers Guide
    Chapitre
    Working with UDFs and Blob Filters
    /
    The InterBase UDF Library
    J'avoue qu'aujourd'hui, le courage me manque et j'ai peut etre crier A L'AIDE un peu trop vite.
    La fin de semaine surement ...

    Juste pour entretenir cette flemme passagere, je me demande s'il n'existe pas l'aide IB6.0 en francais ? On ne se refait pas ;o)

  5. #5
    Membre chevronné
    Avatar de Etienne Bar
    Homme Profil pro
    Consultant indépendant
    Inscrit en
    Octobre 2002
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Consultant indépendant
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2002
    Messages : 282
    Par défaut
    Si tu veux du multi plate forme,

    Select cast(truc/machin as integer) donne un résultat entier.

    Pour le modulo c'est juste un peu plus compliqué mais tu trouveras tout seul ;-)

  6. #6
    Membre éclairé
    Inscrit en
    Juin 2002
    Messages
    409
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 409
    Par défaut
    OK Merci Etienne Barr. Mais juste encore une chose : cela veut dire que l'udf IB_UDF n'est pas multi-plateforme ? Parceque j'ai utiliser une autre fonction (SIGN) qui me rend bien service.

  7. #7
    Membre Expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 052
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 052
    Par défaut
    Si elle est porté de la même manière qu'IB l'est. pour le vérifier téléchargez les versions correspondant à vos plateforme de travail et constatez qu'il y a bien l'UDF...

    Sous win ca sera une .DLL
    sous linux une .so il me semble.

    Ce qu'a voulu dire Etienne c'est que sa méthode rend indépendant de l'UDF.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Algorithme de division ou de modulo sur grands nombres
    Par méphistopheles dans le forum Algorithmes et structures de données
    Réponses: 40
    Dernier message: 13/06/2019, 14h58
  2. ACCESS SQL : division entière ?
    Par kikidrome dans le forum Langage SQL
    Réponses: 6
    Dernier message: 02/10/2014, 09h12
  3. Division entière avec TRUNC
    Par LinuxUser dans le forum SQL
    Réponses: 14
    Dernier message: 09/01/2008, 15h14
  4. Division entière, arrondi au-dessous
    Par crosse9 dans le forum WinDev
    Réponses: 4
    Dernier message: 10/09/2007, 08h27
  5. [Sparc V8] Reste division entière
    Par oli_carbo dans le forum Autres architectures
    Réponses: 1
    Dernier message: 24/10/2006, 16h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo