Question en SQL

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. Je dirais même plus :

    SELECT nom-cl
    FROM Clients
    WHERE nom='a%'
    OR nom='b%'
    OR nom='c%'
    OR nom='d%'
    1. 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
  2. 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%';
    1. Contributeur
      SELECT *
      FROM Clients
      WHERE left(UPPER(société),1)>='A'
      and left(UPPER(société),1)<='D';
      1. jai fait ceci mais on me signal k la fonction upper nest pas definie en expression !!
        1. 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%';
          1. 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
        2. Contributeur
          SELECT *
          FROM Clients
          WHERE left(Ucase(société),1)>='A' And left(Ucase(société),1)<='D';
          1. 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
          2. Contributeur
            @sinzoleft(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 ?
          3. @yg_beokeeey , bien recu, je suis tres reconnaissant.
            merci bcp