Question en SQL

sinzo Messages postés 98 Statut Membre -  
sinzo Messages postés 98 Statut Membre -
Bonjour,

je ss debutant en acces ,et jaimerais realiser une requette qui affiche des noms commencant par une lettre comprise entre A et D . voici la requette que jai réalisé mais elle marche pas :

SELECT Clients.*
FROM Clients where société like "between a and d*"
order by 2 ;

merci de me repondre.
Configuration: Windows XP
Firefox 3.0.10

7 réponses

  1. ninouhhichem Messages postés 303 Statut Membre 9
     
    SELECT nom-cl
    FROM Clients
    where nom='a%' or nom='d%'
    0
  2. BadGuitarist Messages postés 373 Statut Membre 27
     
    Je dirais même plus :

    SELECT nom-cl
    FROM Clients
    WHERE nom='a%'
    OR nom='b%'
    OR nom='c%'
    OR nom='d%'
    0
    1. sinzo Messages postés 98 Statut Membre
       
      merci mais ca ne fonctionne tjs pas :s...
      voici c ke jai fait :
      SELECT Clients.*
      FROM Clients
      WHERE société='a*'
      or société='b*'
      or société='c*'
      or société='d*';

      je fais * au lieu de % packe je travaille avec acces 2007 il reconnait * comme %.

      merci de me reperer le probleme
      0
  3. BadGuitarist Messages postés 373 Statut Membre 27
     
    Tes données sont peut-être écrite en majuscules.
    Si tel est le cas, il faut faire cela :

    SELECT *
    FROM Clients
    WHERE UPPER(société)='A%'
    or UPPER(société)='B%'
    or UPPER(société)='C%'
    or UPPER(société)='D%';
    0
  4. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    SELECT *
    FROM Clients
    WHERE left(UPPER(société),1)>='A'
    and left(UPPER(société),1)<='D';
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. sinzo Messages postés 98 Statut Membre
     
    jai fait ceci mais on me signal k la fonction upper nest pas definie en expression !!
    0
  7. BadGuitarist Messages postés 373 Statut Membre 27
     
    Désolé, je viens de m'apercevoir de mon énorme boulette.
    Voivi ce qui va marcher :

    Tes données sont peut-être écrite en majuscules.
    Si tel est le cas, il faut faire cela :

    SELECT *
    FROM Clients
    WHERE UPPER(société) LIKE 'A%'
    or UPPER(société) LIKE 'B%'
    or UPPER(société) LIKE 'C%'
    or UPPER(société) LIKE 'D%';
    0
    1. sinzo Messages postés 98 Statut Membre
       
      merci bcp mais franchement ca aussi ne marche pas , jai essaye et avec le minuscule et avec le majuscule :s...

      je sais pas quoi faire là.. autres solutions svp ..
      merci davance
      0
  8. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    SELECT *
    FROM Clients
    WHERE left(Ucase(société),1)>='A' And left(Ucase(société),1)<='D';
    0
    1. sinzo Messages postés 98 Statut Membre
       
      ouiiiii merci bcp ca marche maintenant , si tu pouvais juste m'expliquer ces instructions ,packe c la 1ere fois ke je les vois, et merci encore
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > sinzo Messages postés 98 Statut Membre
         
        left(Ucase(société),1)>='A'

        ucase() transforme en majuscule
        left(,1) prend le premier caractère de gauche
        >= teste si c'est plus grand que la lettre A

        le reste est-il clair ?
        0
      2. sinzo Messages postés 98 Statut Membre > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
         
        okeeey , bien recu, je suis tres reconnaissant.
        merci bcp
        0