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

MySQL Discussion :

Test d'intelligence !


Sujet :

MySQL

  1. #1
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 716
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 716
    Points : 52 380
    Points
    52 380
    Billets dans le blog
    4
    Par défaut Test d'intelligence !
    Bonjour,

    quelqu'un aurait-il l'amabilité de faire pour moi quelques requête sur MySQL ?

    Voici la chose :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    CREATE TABLE T_DATA 
    (DATA_VALEUR   VARCHAR(256), 
     DATA_TYPE     VARCHAR(8));
     
    -- les données : 
    INSERT INTO T_DATA VALUES ('abcdef', 'alpha') ;
    INSERT INTO T_DATA VALUES ('123456', 'nombre') ;
    INSERT INTO T_DATA VALUES ('21"''t', 'alpha') ;
    INSERT INTO T_DATA VALUES ('987456', 'nombre');
    Maintenant voici le test d'intelligence à faire subir à votre SGBDR :

    Test n°1 : que dit la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * 
    FROM   T_DATA 
    WHERE  DATA_TYPE = 'nombre' 
      AND  CAST(DATA_VALEUR AS INTEGER) > 500000;

    Test n°2 : que dit la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM   (SELECT * 
            FROM   T_DATA 
            WHERE  CAST(DATA_VALEUR AS INTEGER) > 500000) AS T 
    WHERE  DATA_TYPE = 'nombre'
    Test n°3 : que dit la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM   (SELECT * 
            FROM   T_DATA 
            WHERE  DATA_VALEUR > 500000) AS T 
    WHERE  DATA_TYPE = 'nombre'
    D'avance merci !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  2. #2
    Membre confirmé
    Avatar de omiossec
    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2002
    Messages : 241
    Points : 563
    Points
    563
    Par défaut
    Avec MySQL
    CAST(expr AS type) l'on doit indiquer pour un entier si il est signé ou non (SIGNED / UNSIGNED)



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT * 
    FROM   T_DATA 
    WHERE  DATA_TYPE = 'nombre' 
      AND  CAST(DATA_VALEUR AS UNSIGNED) > 500000;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      DATA_VALEUR    DATA_TYPE    
    -----------    ---------    
    987456         nombre
    A savoir les même réponses que sous SQL Server
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM   (SELECT * 
            FROM   T_DATA 
            WHERE  CAST(DATA_VALEUR AS UNSIGNED) > 500000) AS T 
    WHERE  DATA_TYPE = 'nombre';
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DATA_VALEUR    DATA_TYPE    
    -----------    ---------    
    987456         nombre


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM   (SELECT * 
            FROM   T_DATA 
            WHERE  DATA_VALEUR > 500000) AS T 
    WHERE  DATA_TYPE = 'nombre';
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DATA_VALEUR    DATA_TYPE    
    -----------    ---------    
    987456         nombre
    Soit les même réponses que sous Sql Server
    Olivier Miossec

Discussions similaires

  1. Débat sur l'I.A (Intelligence Artificielle)
    Par Anonymous dans le forum Intelligence artificielle
    Réponses: 457
    Dernier message: 05/07/2016, 02h11
  2. Tests psychotechniques pour consultant Business Intelligence
    Par Bonendalé dans le forum Forum général Business Intelligence
    Réponses: 1
    Dernier message: 30/09/2008, 23h47
  3. [Morpion] Faire jouer l'ordinateur intelligement
    Par Invité dans le forum Intelligence artificielle
    Réponses: 8
    Dernier message: 18/09/2003, 12h05
  4. [XMLRAD] test de nullité
    Par Pm dans le forum XMLRAD
    Réponses: 5
    Dernier message: 29/11/2002, 11h57
  5. test collisions
    Par tatakinawa dans le forum OpenGL
    Réponses: 5
    Dernier message: 08/06/2002, 07h03

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