Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Nouveau Membre du Club
    Inscrit en
    avril 2002
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : avril 2002
    Messages : 39
    Points : 31
    Points
    31

    Par défaut Index avec un convert

    Bonjour,


    j'ai une requête dans mon application qui utilise les critéres suivants :

    Code :
    1
    2
    3
     
    convert(varchar(10), Create_Date, 111) >= '2011/08/01' 
    	and  convert(varchar(10), Create_Date, 111) <= '2011/08/31'
    J'ai un index sur la colonne Create_Date,mais le convert by pass cet index et mes performances sont exécrables.

    Es t'il possible de créer un index avec un convert ?
    J'ai essayé mais je n'ai pas réussi.
    Code :
    1
    2
     
    create nonclustered index idx_Document_CreateDate2 ON Document(convert(varchar(10), Create_Date, 111))
    Je veux passer par les index , car je ne peux pas me permettre de modifier la requête pour le moment.

    Merci.

  2. #2
    Rédacteur/Modérateur

    Inscrit en
    janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 307
    Points : 1 750
    Points
    1 750

    Par défaut

    Cela dépend de la version.

    En Sybase 15.x cela devient possible:

    Code :
    1
    2
    3
     
    create table #t(i int, d datetime)
    create index ix on #t (convert(varchar(30), d, 111))
    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  3. #3
    Nouveau Membre du Club
    Inscrit en
    avril 2002
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : avril 2002
    Messages : 39
    Points : 31
    Points
    31

    Par défaut

    Merci pour la réponse.

    Je dispose de la version 12
    J'ai réessayé , de créer l'index j'ai eu un message d'erreur (Inocrrect syntax near the keyword 'convert').

    Ce n'est pas possible de créer ce type d'index sur une version inférieure à la 15 ?

  4. #4
    Rédacteur/Modérateur

    Inscrit en
    janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 307
    Points : 1 750
    Points
    1 750

    Par défaut

    Effectivement. Cette fonctionalité a été introduite avec la version 15.

    La seule possibilité que j'entrevois c'est de créer une nouvelle colonne physique avec la valeur pre-calculée, par example via un trigger d'insert/update.

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  5. #5
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro Yannick
    Responsable Applicatif et R&D
    Inscrit en
    février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Nom : Homme Yannick
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : février 2006
    Messages : 1 144
    Points : 1 717
    Points
    1 717

    Par défaut

    Ou de passer le convert sur la colonne constante ?
    Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac)

  6. #6
    Nouveau Membre du Club
    Inscrit en
    avril 2002
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : avril 2002
    Messages : 39
    Points : 31
    Points
    31

    Par défaut

    Malheureusement c'est sur maintenant,je dois modifier et relivrer l'application

    Merci pour vos réponses.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •