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

Langage SQL Discussion :

requete sql pour selectionner la ligne suivante


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Points : 14
    Points
    14
    Par défaut requete sql pour selectionner la ligne suivante
    Bonjour, je dispode d'une base de donnée de verbe irrégulier et je voudrai savoir comment obtenir le verbe 2 à partir du verbe 1.

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE TABLE VERBE
    (idverbe char(5) not null
    ,nomverbe varchar(10) not null
    ,verbesed varchar(10) not null
    ,verbesen varchar(10) not null
    ,verbefr varchar(20) not null
    ,constraint pk_verbes primary key(idverbe))
     
    insert into VERBE(idverbe,nomverbe,verbesed,verbesen,verbefr) values ('vb001','abide','abode','abode','demeurer')
    insert into VERBE(idverbe,nomverbe,verbesed,verbesen,verbefr) values ('vb002','arise','arose','arisen','s élever')

    pour être précis, je voudrais obtenir arise à partir de abide

    ma requete :

    select verbe from verbe where ?

    Merci de m'aider et de me consacrer du temps.

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 102
    Points : 28 387
    Points
    28 387
    Par défaut
    La règle est simple : le suivant, c'est le premier de tous ceux qui sont après (ou le plus petit de ceux qui sont plus grands)
    Il ne te reste plus qu'à traduire en SQL

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Si ton champ idverbe est un entier incrémental au lieu d'un char, tu peux écrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    declare @nomverbe char(10)
    set @nomverbe='abide'
     
    select V1.nomverbe,V1....,V2.nomverbe,V2.....
    from VERBE V1
    inner join VERBE V2
    on V1.idverbe+1=V2.idverbe
    where V1.nomverbe=@nomverbe
    tu auras donc bien V2.nomverbe égal à 'arise'

    si tu souhaites absolument conserver idverbe au format char.
    cela donne quelque chose de bcp plus moche dans la clause on:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    on cast(right(V1.idverbe,3) as int)+1=cast(right(V2.idverbe,3) as int)
    Amuse toi bien et moi cela me fait penser qu'il faut que je révise mes verbes irréguliers

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 048
    Points
    34 048
    Billets dans le blog
    14
    Par défaut
    Ce qui montre une fois de plus que le type entier est préférable pour une clé primaire !

    A noter quand même qu'ici, la notion de suivant n'est donnée que par la numérotation arbitraire des verbes mais rien ne dit que ceux-ci sont enregistrés dans l'ordre alphabétique.

    C'est OK pour l'exemple de données fourni mais pas forcément dans l'absolu.

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/02/2010, 01h07
  2. requete sql pour selectionner certains éléments
    Par moustique95 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/06/2008, 20h53
  3. [Access SQL]Requetes SQL pour "inverser" ligne et colonne
    Par trihanhcie dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/07/2007, 13h12
  4. Requete sql pour création de table dans une base access
    Par Ben156 dans le forum Bases de données
    Réponses: 1
    Dernier message: 17/01/2006, 22h12
  5. Requete SQL pour Access
    Par heraieros dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 13/01/2006, 14h15

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