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

Requêtes MySQL Discussion :

[mysql 4.11] Select sur la taille d'une chaine de caractère


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 242
    Points : 94
    Points
    94
    Par défaut [mysql 4.11] Select sur la taille d'une chaine de caractère
    Bonjour,

    Comment rechercher les enregistrements qui ont une longueur de caractère particulière
    J'ai essayé cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nouvr from '019' WHERE CHARACTER_LENGTH('DateFasc')< '10'
    Mais ça ne marche pas
    Merci pour votre aidre

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nouvr FROM '019' WHERE LENGTH('DateFasc')< '10'

  3. #3
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 242
    Points : 94
    Points
    94
    Par défaut
    Je n'ai plus de problème avec la requête, par contre, en résultat, j'ai des chaines de caractère qui sont supérieurs a 10 caractères. Bref j'ai toute la table

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    en enlevant les ' ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nouvr FROM '019' WHERE LENGTH(DateFasc)< 10

  5. #5
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 242
    Points : 94
    Points
    94
    Par défaut
    C'est ce que j'ai fait, sinon j'avais une erreur sql

  6. #6
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    si tu fais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nouvr, LENGTH(DateFasc) FROM '019' WHERE LENGTH(DateFasc)< 10
    tu peux donner qq tuples retournés?

  7. #7
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 242
    Points : 94
    Points
    94
    Par défaut
    Voila un exemple de ce que je trouve

    Nouvr LENGTH DateFasc
    00000714878576 7
    00000714778576 7
    00000797678576 7
    00000130578576 7 01/03/01
    00000157178576 7 01/11/2002
    je précise que le champ DateFasc est un string 10 et non un champ date

    donc j'aimerai avoir comme résultat les 4 premiers enregistrements uniquement
    Je ne comprend pas pourquoi dans tous les cas LENGTH(DateFasc) = 7 ????

  8. #8
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Points : 4 644
    Points
    4 644
    Par défaut
    tu peux mettre le script de création de ta table, ainsi que des exemples d'insertion avec longueur inférieur à 0, puis supérieur

    Merci

  9. #9
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 242
    Points : 94
    Points
    94
    Par défaut
    Voila la structure de la table

    CREATE TABLE `019` (
    `NumNot` int(11) default NULL,
    `Nouvr` varchar(14) default NULL,
    `Multi` char(1) default NULL,
    `Ncote` int(11) default NULL,
    `NumF` int(11) default NULL,
    `NLoc` int(11) default NULL,
    `Section` int(11) default NULL,
    `RglPret` int(11) default NULL,
    `Nvxte` char(1) default NULL,
    `EtatDoc` char(1) default NULL,
    `DateCat` varchar(10) default NULL,
    `NumFasc` varchar(10) default NULL,
    `DateFasc` varchar(10) default NULL,
    `Hs` char(1) default NULL,
    `Info` longtext,
    `ACat` varchar(9) default NULL,
    `DateRet1` varchar(10) default NULL,
    `NumIns1` varchar(14) default NULL,
    `DateRet2` varchar(12) default NULL,
    `NumIns2` varchar(14) default NULL,
    `Type` char(2) default NULL,
    `NLocIni` int(11) default NULL,
    `NvxteAn` char(1) default NULL,
    `Annee` smallint(6) default NULL,
    `NbrPretA` int(11) default NULL,
    `NbrPretA-1` int(11) default NULL,
    `NbrPretCumule` int(11) default NULL,
    `AfficheNote` char(2) default NULL,
    `NOuvrOri` varchar(14) default NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    c'est une table qui vient d'un import d'une base paradox

Discussions similaires

  1. la taille d'une chaine du caractére
    Par farid0031 dans le forum C++Builder
    Réponses: 2
    Dernier message: 30/04/2009, 09h24
  2. taille d'une chaine de caractère
    Par Magical dans le forum Langage
    Réponses: 10
    Dernier message: 26/07/2007, 16h36
  3. Réponses: 4
    Dernier message: 18/07/2007, 14h10
  4. Taille d'une chaine de caractères en PL/SQL
    Par soumou dans le forum PL/SQL
    Réponses: 3
    Dernier message: 02/11/2006, 21h29
  5. la taille d'une chaine de caractère
    Par rakhaoui dans le forum ASP
    Réponses: 2
    Dernier message: 05/06/2006, 14h01

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