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

MS SQL Server Discussion :

Existe t'il des curseurs !


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Poisson59
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 213
    Par défaut Existe t'il des curseurs !
    Bonjour,

    Voici mon code SQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT id_level FROM TEST
    résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    id_class     id_level	
    --------------------------
    1408	    630.631.674.1408.
    est t'il possible d'extraire à l'aide d'un curseur les info séparer par des points
    sans faire de substring parce que j'ai déja essayer et un moment donner ca ne marche pas bien

    pour avoir au final :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    id_class   id_level            col1   col2  col3   col4
    -----------------------------------------------------------
    1408      630.631.674.1408.       630    631   674   1408
    merci

  2. #2
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

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

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Par défaut
    pour que ca marche il te faut utiliser le CHARINDEX
    qui est l'équivalent d'un pos
    regarde dans la doc sqlserveur

    A+
    serge

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Par défaut
    Tu n'as pas le choix. SUBSTRING obligatoire.
    Et c'est ca qui ne marche pas ?
    http://www.developpez.net/forums/sho...d.php?t=204351

  4. #4
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

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

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Par défaut
    je te le fais pour les deux premiers, je te laisse les 2 suivants pour voir si tu as compris:

    select substring(id_level,1,charindex('.',id_level)-1) ,
    substring(id_level,charindex('.',id_level)+1,charindex('.',substring(id_level,1,charindex('.',id_level)))-1 ) from tatable

    A+
    serge

  5. #5
    Membre confirmé Avatar de Poisson59
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 213
    Par défaut
    Merci serge je connaissais la manip regarde mon code

    voici mon probleme avec le substring:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Select id_class,id_level,
    substring(id_level,1,charindex('.',id_level)-1) as Col1,
    substring(id_level,1+len(substring(id_level,1,charindex('.',id_level))),charindex('.',id_level)-1) as Col2,
    substring(id_level,1+len(substring(id_level,1,charindex('.',id_level)))+ len(substring(id_level,1+len(substring(id_level,1,charindex('.',id_level))),charindex('.',id_level))),charindex('.',id_level)-1) as Col3,
    substring(id_level,1+len(substring(id_level,1,charindex('.',id_level)))+len(substring(id_level,1,charindex('.',id_level)))+ len(substring(id_level,1+len(substring(id_level,1,charindex('.',id_level))),charindex('.',id_level))),charindex('.',id_level)-1) as Col4
    From TEST
    Voici le résultat pour certain enregistrement et je ne comprend pas pourquoi il ne fais pas ce que je lui dis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    id_class	id_level	  Col1	Col2	Col3	Col4
    ------------------------------------------------------------
    1375	   1055.1067.1189.1375.	  1055	1067	1189	1375	
    1376	   1055.1067.1189.1376.	  1055	1067	1189	1376	
    1405	   1055.1405.             1055	1405		
    1406	   630.639.1406.	  630	639	140	.
    1407	   630.1407.	          630	140	.	
    1408	   630.631.674.1408.	  630	631	674	140
    1409	   630.631.674.1409.	  630	631	674	140
    1411	   630.631.674.1411.	  630	631	674	141
    1412	   630.631.672.1412.	  630	631	672	141
    Tous vas bien pour les trois premiers enregistrements
    et là je n'arrive pas a comprendre la Col2 et Col3 des enregistrements dont l'id_class est égal à 1406 et 1407
    je n'arrive pas à comprendre la Col4 des enregistrement dont l'id_class est égal à 1408 1409 1411 1412

    Ya t'il un probleme sur ma reque SQL

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 434
    Par défaut
    Poisson59,

    ce n'est pas la requête qui pose un réel problème, c'est ton jeu de test.
    Dans ton premier message (celui posté sur le même sujet la semaine dernière), ainsi que dans le premier message de ce post, tu nous montres un id_level qui ne se termine pas par un '.'

    Ensuite, tu prends le code de serge064 (et je comprends maintenant pourquoi le mien de la semaine dernière à te lire ne marche pas), tu l'exécutes et nous montre le soucis.

    Or si je regarde bien, ta colonne id_level se termine systématiquement par un '.'

    Donc ce n'est pas la même question, et ce ne sera pas la même réponse. Car PATINDEX dans mon code et celui de serge regarde où se trouve le ., et se base là-dessus pour déterminer la sous-chaine de caractère à extraire.

    Voilà.

  7. #7
    Membre confirmé Avatar de Poisson59
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 213
    Par défaut
    Salut ZERS (je me suis tromper sur le 1er code effectivement il manque le point que je viens de modifier)
    Explique moi pourqoui le dernier code que j'execute ne marche pas alors que la syntaxe est bonne car les trois 1er enregistrement fonctionnent ?

    et le code de Serge marche seulement pour les deux premieres Colonne
    pour la troisieme colonne il est obliger d'utiliser un len(Substring'id_level,.....)

    donc ca revient à mon code dy dessus

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Existe t-il des Sites en php prêt à l'emploi...tout fait !!!
    Par Chronax dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 10
    Dernier message: 09/03/2006, 17h01
  2. Réponses: 4
    Dernier message: 09/03/2006, 11h28
  3. Existe t-il des transactions "globales"
    Par devdev dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/03/2005, 20h12
  4. existe t 'il des programme pour transformer les bases
    Par creazone dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 05/10/2004, 14h11
  5. Existe-t-il des Dé-compilateurs sur Terre?
    Par Julien_riquelme dans le forum Autres éditeurs
    Réponses: 11
    Dernier message: 15/12/2003, 01h46

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