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

Développement SQL Server Discussion :

Eliminer key lookup de mon plan d'exécution


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    test
    Inscrit en
    Mai 2016
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : test
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Mai 2016
    Messages : 345
    Points : 121
    Points
    121
    Par défaut Eliminer key lookup de mon plan d'exécution
    hello,

    je cherche a optimiser une requête SQL qui consomme du ressource CPU

    j'ai une opération de key lookup sur le plan d'excution et je veux l'enlever mais je ne sais pas quel colonne qui est la cause de opération et comment je peux l'optimiser

    Qui a une idée SVP ?

    veuillez Trouve ci joint le syntaxe du requête en question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Employee.LoginID, Employee.DisplayName, Employee.RecId, Employee.AMI_LastName, Employee.AMI_FirstName  FROM Employee WHERE (Employee.LoginID = '1'  )
    Employee c'est une Vue son syntaxe est le suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CREATE VIEW [dbo].[Employee] WITH SCHEMABINDING AS SELECT Frs_CompositeBase_Employee.[InitialNotReadyReasonValue_Valid] as [InitialNotReadyReasonValue_Valid], Frs_CompositeBase_Employee.[InitialNotReadyReasonValue] as [InitialNotReadyReasonValue], Frs_CompositeContract_Contact.[Address1] as [Address1], Frs_CompositeContract_Contact.[Address1City] as [Address1City], Frs_CompositeContract_Contact.[Address1Country] as [Address1Country], Frs_CompositeContract_Contact.[Address1State] as [Address1State], Frs_CompositeContract_Contact.[Address1Zip] as [Address1Zip], Frs_CompositeBase_Employee.[Birthdate] as [Birthdate], Frs_CompositeBase_Employee.[BusinessUnit_Valid] as [BusinessUnit_Valid], Frs_CompositeBase_Employee.[BusinessUnit] as [BusinessUnit], Frs_CompositeBase_Employee.[BusinessUnitID] as [BusinessUnitID], Frs_CompositeContract_Contact.[Id] as [ContactId], Frs_CompositeBase_Employee.[CostCentre] as [CostCentre], Frs_CompositeBase_Employee.[CreatedBy] as [CreatedBy], Frs_CompositeBase_Employee.[CreatedDateTime] as [CreatedDateTime], Frs_CompositeBase_Employee.[CreationMethod_Valid] as [CreationMethod_Valid], Frs_CompositeBase_Employee.[CreationMethod] as [CreationMethod], Frs_CompositeContract_Contact.[Department_Valid] as [Department_Valid], Frs_CompositeContract_Contact.[Department] as [Department], Frs_CompositeBase_Employee.[DepartmentCode] as [DepartmentCode], Frs_CompositeBase_Employee.[Department_Sync] as [Department_Sync], Frs_CompositeContract_Identity.[IsDisabled] as [Disabled], Frs_CompositeContract_Contact.[DisplayName] as [DisplayName], Frs_CompositeContract_Contact.[EmployeeInformation] as [EmployeeInformation], Frs_CompositeContract_Contact.[EmployeeLocation_Valid] as [EmployeeLocation_Valid], Frs_CompositeContract_Contact.[EmployeeLocation] as [EmployeeLocation], Frs_CompositeContract_Contact.[EmployeePhoto] as [EmployeePhoto], Frs_CompositeContract_Contact.[EmployeePhotoName] as [EmployeePhotoName], Frs_CompositeContract_Contact.[EmployeePhotoRevision] as [EmployeePhotoRevision], Frs_CompositeBase_Employee.[EnableIPCMIntegration] as [EnableIPCMIntegration], Frs_CompositeContract_Contact.[FirstName] as [FirstName], Frs_CompositeBase_Employee.[Floor] as [Floor], Frs_CompositeBase_Employee.[HiredDate] as [HiredDate], Frs_CompositeBase_Employee.[IPCM_AgentGroup_Valid] as [IPCM_AgentGroup_Valid], Frs_CompositeBase_Employee.[IPCM_AgentGroup] as [IPCM_AgentGroup], Frs_CompositeBase_Employee.[IPCM_Audited_Valid] as [IPCM_Audited_Valid], Frs_CompositeBase_Employee.[IPCM_Audited] as [IPCM_Audited], Frs_CompositeBase_Employee.[IPCM_Description] as [IPCM_Description], Frs_CompositeBase_Employee.[IPCM_EnableIPCMUser] as [IPCM_EnableIPCMUser], Frs_CompositeBase_Employee.[IPCM_InitialAgentStatus_Valid] as [IPCM_InitialAgentStatus_Valid], Frs_CompositeBase_Employee.[IPCM_InitialAgentStatus] as [IPCM_InitialAgentStatus], Frs_CompositeBase_Employee.[IPCM_InitialNotReadyReason_Valid] as [IPCM_InitialNotReadyReason_Valid], Frs_CompositeBase_Employee.[IPCM_InitialNotReadyReason] as [IPCM_InitialNotReadyReason], Frs_CompositeBase_Employee.[IPCM_NotReadyRequired_Valid] as [IPCM_NotReadyRequired_Valid], Frs_CompositeBase_Employee.[IPCM_NotReadyRequired] as [IPCM_NotReadyRequired], Frs_CompositeBase_Employee.[IPCM_OverrideDN] as [IPCM_OverrideDN], Frs_CompositeBase_Employee.[IPCM_RecordingPct] as [IPCM_RecordingPct], Frs_CompositeBase_Employee.[IPCM_SearchableByName] as [IPCM_SearchableByName], Frs_CompositeBase_Employee.[IPCM_UILanguage_Valid] as [IPCM_UILanguage_Valid], Frs_CompositeBase_Employee.[IPCM_UILanguage] as [IPCM_UILanguage], Frs_CompositeBase_Employee.[IPCM_VOIPLink_Category] as [IPCM_VOIPLink_Category], Frs_CompositeBase_Employee.[IPCM_VOIPLink_RecID] as [IPCM_VOIPLink_RecID], Frs_CompositeBase_Employee.[IPCM_VoiceAgent] as [IPCM_VoiceAgent], Frs_CompositeBase_Employee.[IPCM_VoiceSupervisor] as [IPCM_VoiceSupervisor], Frs_CompositeBase_Employee.[IPCM_WrapupSeconds] as [IPCM_WrapupSeconds], Frs_CompositeBase_Employee.[IPCM_WrapupTimeout_Valid] as [IPCM_WrapupTimeout_Valid], Frs_CompositeBase_Employee.[IPCM_WrapupTimeout] as [IPCM_WrapupTimeout], Frs_CompositeBase_Employee.[IVRPinCode] as [IVRPinCode], Frs_CompositeContract_Identity.[Id] as [IdentityId], Frs_CompositeContract_Identity.[Password] as [InternalAuthPasswd], Frs_CompositeContract_Identity.[InternalPwdDateTime] as [InternalPwdDateTime], Frs_CompositeBase_Employee.[IsAutoProvisioned] as [IsAutoProvisioned], Frs_CompositeContract_Identity.[IsImported] as [IsExternalAuth], Frs_CompositeContract_Identity.[IsInternal] as [IsInternalAuth], Frs_CompositeContract_Identity.[IsNamedUser] as [IsNamedUser], Frs_CompositeContract_Identity.[LastExternalLoginId] as [LastExternalLoginId], Frs_CompositeBase_Employee.[LastModBy] as [LastModBy], Frs_CompositeBase_Employee.[LastModDateTime] as [LastModDateTime], Frs_CompositeContract_Contact.[LastName] as [LastName], Frs_CompositeContract_Identity.[LoginID] as [LoginID], Frs_CompositeBase_Employee.[ManagerEmail] as [ManagerEmail], Frs_CompositeBase_Employee.[ManagerLink_Category] as [ManagerLink_Category], Frs_CompositeBase_Employee.[ManagerLink_RecID] as [ManagerLink_RecID], Frs_CompositeContract_Contact.[MiddleName] as [MiddleName], Frs_CompositeContract_Contact.[NetworkUserName] as [NetworkUserName], Frs_CompositeBase_Employee.[NotificationLink_Category] as [NotificationLink_Category], Frs_CompositeBase_Employee.[NotificationLink_RecID] as [NotificationLink_RecID], Frs_CompositeContract_Contact.[OrgUnitLink_Category] as [OrgUnitLink_Category], Frs_CompositeContract_Contact.[OrgUnitLink_RecID] as [OrgUnitLink_RecID], Frs_CompositeContract_Contact.[EntityLink_Category] as [EntityLink_Category], Frs_CompositeContract_Contact.[EntityLink_RecID] as [EntityLink_RecID], Frs_CompositeContract_Contact.[OrganizationalUnit] as [OrganizationalUnit], Frs_CompositeContract_Contact.[OrganizationalUnit_de] as [OrganizationalUnit_de], Frs_CompositeContract_Contact.[OrganizationalUnit_es] as [OrganizationalUnit_es], Frs_CompositeContract_Contact.[OrganizationalUnit_fr] as [OrganizationalUnit_fr], Frs_CompositeContract_Contact.[OrganizationalUnit_ja] as [OrganizationalUnit_ja], Frs_CompositeContract_Contact.[OrganizationalUnit_nl] as [OrganizationalUnit_nl], Frs_CompositeContract_Contact.[OrganizationalUnit_pt_BR] as [OrganizationalUnit_pt_BR], Frs_CompositeContract_Contact.[OrganizationalUnit_ru] as [OrganizationalUnit_ru], Frs_CompositeBase_Employee.[Owner_Valid] as [Owner_Valid], Frs_CompositeBase_Employee.[Owner] as [Owner], Frs_CompositeBase_Employee.[ParentLink_Category] as [ParentLink_Category], Frs_CompositeBase_Employee.[ParentLink_RecID] as [ParentLink_RecID], Frs_CompositeContract_Identity.[PasswordExpiration] as [PasswordExpiration], Frs_CompositeContract_Contact.[Phone1] as [Phone1], Frs_CompositeContract_Contact.[Phone2] as [Phone2], Frs_CompositeBase_Employee.[Prefix_Valid] as [Prefix_Valid], Frs_CompositeBase_Employee.[Prefix] as [Prefix], Frs_CompositeContract_Contact.[PrimaryEmail] as [PrimaryEmail], Frs_CompositeBase_Employee.[ProfileID] as [ProfileID], Frs_CompositeBase_Employee.[ReadOnly] as [ReadOnly], Frs_CompositeBase_Employee.[RecId] as [RecId], Frs_CompositeBase_Employee.[RegionLink_Category] as [RegionLink_Category], Frs_CompositeBase_Employee.[RegionLink_RecID] as [RegionLink_RecID], Frs_CompositeBase_Employee.[Room] as [Room], Frs_CompositeBase_Employee.[Status_Valid] as [Status_Valid], Frs_CompositeBase_Employee.[Status] as [Status], Frs_CompositeBase_Employee.[Suffix_Valid] as [Suffix_Valid], Frs_CompositeBase_Employee.[Suffix] as [Suffix], Frs_CompositeBase_Employee.[Supervisor_Valid] as [Supervisor_Valid], Frs_CompositeBase_Employee.[Supervisor] as [Supervisor], Frs_CompositeBase_Employee.[Team_Valid] as [Team_Valid], Frs_CompositeBase_Employee.[Team] as [Team], Frs_CompositeBase_Employee.[TeamEmail] as [TeamEmail], Frs_CompositeBase_Employee.[TeamManagerEmail] as [TeamManagerEmail], Frs_CompositeContract_Identity.[TempInternalAuthPassword] as [TempInternalAuthPassword], Frs_CompositeContract_Identity.[TempPwdDatetime] as [TempPwdDatetime], Frs_CompositeBase_Employee.[TerminatedDate] as [TerminatedDate], Frs_CompositeContract_Contact.[Title_Valid] as [Title_Valid], Frs_CompositeContract_Contact.[Title] as [Title], Frs_CompositeBase_Employee.[Title_Sync] as [Title_Sync], Frs_CompositeContract_Contact.[VIP] as [VIP], Frs_CompositeBase_Employee.[ReportedByLink_Category] as [ReportedByLink_Category], Frs_CompositeBase_Employee.[ReportedByLink_RecID] as [ReportedByLink_RecID], Frs_CompositeContract_Contact.[LocationLink_Category] as [LocationLink_Category], Frs_CompositeContract_Contact.[LocationLink_RecID] as [LocationLink_RecID], Frs_CompositeContract_Contact.[DefaultChargingAccount_Valid] as [DefaultChargingAccount_Valid], Frs_CompositeContract_Contact.[DefaultChargingAccount] as [DefaultChargingAccount], Frs_CompositeBase_Employee.[DN] as [DN], Frs_CompositeBase_Employee.[AMI_LastName] as [AMI_LastName], Frs_CompositeBase_Employee.[AMI_FirstName] as [AMI_FirstName], Frs_CompositeBase_Employee.[INEO_UniqueLoginId] as [INEO_UniqueLoginId], Frs_CompositeBase_Employee.[INEO_ValideurIT_Valid] as [INEO_ValideurIT_Valid], Frs_CompositeBase_Employee.[INEO_ValideurIT] as [INEO_ValideurIT], Frs_CompositeBase_Employee.[INEO_ValideurSAP_Valid] as [INEO_ValideurSAP_Valid], Frs_CompositeBase_Employee.[INEO_ValideurSAP] as [INEO_ValideurSAP], Frs_CompositeBase_Employee.[INEO_WIP] as [INEO_WIP], Frs_CompositeBase_Employee.[INEO_QuotaEnvoi] as [INEO_QuotaEnvoi], Frs_CompositeBase_Employee.[INEO_Societe] as [INEO_Societe], Frs_CompositeBase_Employee.[INEO_SocSAP] as [INEO_SocSAP], Frs_CompositeBase_Employee.[SecondaryPhone] as [SecondaryPhone], Frs_CompositeBase_Employee.[INEO_CSI] as [INEO_CSI], Frs_CompositeBase_Employee.[INEO_DateCreation] as [INEO_DateCreation], Frs_CompositeBase_Employee.[INEO_DateImportD21] as [INEO_DateImportD21], Frs_CompositeBase_Employee.[INEO_DDSAP] as [INEO_DDSAP], Frs_CompositeBase_Employee.[INEO_FAX] as [INEO_FAX], Frs_CompositeBase_Employee.[INEO_JobTitle] as [INEO_JobTitle], Frs_CompositeBase_Employee.[INEO_MasquerDansGAL] as [INEO_MasquerDansGAL], Frs_CompositeBase_Employee.[INEO_MelindaDateCreation] as [INEO_MelindaDateCreation], Frs_CompositeBase_Employee.[INEO_MelindaEmail] as [INEO_MelindaEmail], Frs_CompositeBase_Employee.[INEO_MelindaNom] as [INEO_MelindaNom], Frs_CompositeBase_Employee.[INEO_MelindaPrenom] as [INEO_MelindaPrenom], Frs_CompositeBase_Employee.[INEO_PoleMetierSAP] as [INEO_PoleMetierSAP], Frs_CompositeBase_Employee.[INEO_PoleSAP] as [INEO_PoleSAP], Frs_CompositeBase_Employee.[INEO_PolitiqueSecuriteMobile] as [INEO_PolitiqueSecuriteMobile], Frs_CompositeBase_Employee.[INEO_QuotaAvertissement] as [INEO_QuotaAvertissement], Frs_CompositeBase_Employee.[INEO_AliasEmail] as [INEO_AliasEmail], Frs_CompositeBase_Employee.[INEO_BUSAP] as [INEO_BUSAP], Frs_CompositeBase_Employee.[INEO_CDPSAP] as [INEO_CDPSAP], Frs_CompositeBase_Employee.[INEO_CodeBUSAP_Valid] as [INEO_CodeBUSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodeBUSAP] as [INEO_CodeBUSAP], Frs_CompositeBase_Employee.[INEO_CodeCdPSAP_Valid] as [INEO_CodeCdPSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodeCdPSAP] as [INEO_CodeCdPSAP], Frs_CompositeBase_Employee.[INEO_CodeDDSAP_Valid] as [INEO_CodeDDSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodeDDSAP] as [INEO_CodeDDSAP], Frs_CompositeBase_Employee.[INEO_CodePoleMetierSAP_Valid] as [INEO_CodePoleMetierSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodePoleMetierSAP] as [INEO_CodePoleMetierSAP], Frs_CompositeBase_Employee.[INEO_CodePoleSAP_Valid] as [INEO_CodePoleSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodePoleSAP] as [INEO_CodePoleSAP], Frs_CompositeBase_Employee.[INEO_CodeSocSAP_Valid] as [INEO_CodeSocSAP_Valid], Frs_CompositeBase_Employee.[INEO_CodeSocSAP] as [INEO_CodeSocSAP], Frs_CompositeBase_Employee.[AMI_SocieteSAP_Valid] as [AMI_SocieteSAP_Valid], Frs_CompositeBase_Employee.[AMI_SocieteSAP] as [AMI_SocieteSAP], Frs_CompositeBase_Employee.[AMI_Ville] as [AMI_Ville], Frs_CompositeBase_Employee.[CodeCAP] as [CodeCAP], Frs_CompositeBase_Employee.[AMI_JobTitle] as [AMI_JobTitle], Frs_CompositeBase_Employee.[AMI_OUBU] as [AMI_OUBU], Frs_CompositeBase_Employee.[AMI_OUCentreDeProfit] as [AMI_OUCentreDeProfit], Frs_CompositeBase_Employee.[AMI_OUDD] as [AMI_OUDD], Frs_CompositeBase_Employee.[AMI_OUPole] as [AMI_OUPole], Frs_CompositeBase_Employee.[AMI_OUPoleMetier] as [AMI_OUPoleMetier], Frs_CompositeBase_Employee.[AMI_OUSociete] as [AMI_OUSociete], Frs_CompositeBase_Employee.[AMI_Pays_Valid] as [AMI_Pays_Valid], Frs_CompositeBase_Employee.[AMI_Pays] as [AMI_Pays], Frs_CompositeBase_Employee.[AMI_Pole_Valid] as [AMI_Pole_Valid], Frs_CompositeBase_Employee.[AMI_Pole] as [AMI_Pole], Frs_CompositeBase_Employee.[AMI_PoleMetier_Valid] as [AMI_PoleMetier_Valid], Frs_CompositeBase_Employee.[AMI_PoleMetier] as [AMI_PoleMetier], Frs_CompositeBase_Employee.[AMI_Prefix_Valid] as [AMI_Prefix_Valid], Frs_CompositeBase_Employee.[AMI_Prefix] as [AMI_Prefix], Frs_CompositeBase_Employee.[AMI_PrimaryEmail] as [AMI_PrimaryEmail], Frs_CompositeBase_Employee.[AMI_PrimaryPhone] as [AMI_PrimaryPhone], Frs_CompositeBase_Employee.[AMI_SecondaryPhone] as [AMI_SecondaryPhone], Frs_CompositeBase_Employee.[AMI_Societe] as [AMI_Societe], Frs_CompositeBase_Employee.[AMI_Adresse] as [AMI_Adresse], Frs_CompositeBase_Employee.[AMI_BU_Valid] as [AMI_BU_Valid], Frs_CompositeBase_Employee.[AMI_BU] as [AMI_BU], Frs_CompositeBase_Employee.[AMI_CAP_Valid] as [AMI_CAP_Valid], Frs_CompositeBase_Employee.[AMI_CAP] as [AMI_CAP], Frs_CompositeBase_Employee.[AMI_CDP_Valid] as [AMI_CDP_Valid], Frs_CompositeBase_Employee.[AMI_CDP] as [AMI_CDP], Frs_CompositeBase_Employee.[AMI_CodeBU] as [AMI_CodeBU], Frs_CompositeBase_Employee.[AMI_CodeCentreDeProfit] as [AMI_CodeCentreDeProfit], Frs_CompositeBase_Employee.[AMI_CodeDirectionDeleguee] as [AMI_CodeDirectionDeleguee], Frs_CompositeBase_Employee.[AMI_CodePole] as [AMI_CodePole], Frs_CompositeBase_Employee.[AMI_CodePoleMetier] as [AMI_CodePoleMetier], Frs_CompositeBase_Employee.[AMI_CodePostal] as [AMI_CodePostal], Frs_CompositeBase_Employee.[AMI_CodeSociete] as [AMI_CodeSociete], Frs_CompositeBase_Employee.[AMI_DirectionDeleguee_Valid] as [AMI_DirectionDeleguee_Valid], Frs_CompositeBase_Employee.[AMI_DirectionDeleguee] as [AMI_DirectionDeleguee], Frs_CompositeBase_Employee.[AMI_Fax] as [AMI_Fax], Frs_CompositeBase_Employee.[INEO_BirthDate] as [INEO_BirthDate], Frs_CompositeContract_Identity.[RemoteControlPwd] as [RemoteControlPwd], Frs_CompositeContract_Identity.[RemoteControlUID] as [RemoteControlUID], Frs_CompositeContract_Identity.[NamedLicenseBundle] as [NamedLicenseBundle], Frs_CompositeContract_Identity.[NamedLicenseBundle_Valid] as [NamedLicenseBundle_Valid], Frs_CompositeContract_Contact.[CreationSource] as [CreationSource], Frs_CompositeBase_Employee.[Language_Valid] as [Language_Valid], Frs_CompositeBase_Employee.[Language] as [Language], Frs_CompositeContract_Identity.[LockDate] as [LockDate], Frs_CompositeContract_Identity.[LoginAttemptCount] as [LoginAttemptCount], Frs_CompositeContract_Identity.[LockType] as [LockType], Frs_CompositeContract_Identity.[GlobalId] as [GlobalId]  FROM [dbo].[Frs_CompositeBase_Employee]  JOIN [dbo].[Frs_CompositeContract_Identity] ON Frs_CompositeContract_Identity.RecId = Frs_CompositeBase_Employee.RecId   JOIN [dbo].[Frs_CompositeContract_Contact] ON Frs_CompositeContract_Contact.RecId = Frs_CompositeBase_Employee.RecId 
    GO
    le plan d'execution du requéte https://www.brentozar.com/pastetheplan/?id=B1LVbLDsu

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 898
    Points : 53 139
    Points
    53 139
    Billets dans le blog
    6
    Par défaut
    La première chose est que vous mettez la valeur du LONGIN_ID en chaîne de caractères. Si c'est un nombre, mettez y un nombre !

    La deuxième chose est qu'un KEY LOOKUP n'est pas mauvais, c'est néttement meilleur qu'un scan

    La troisième chose est que nous n'avons pas la description des tables sous forme DDL ni même les index.
    Sans ces informations, difficile de vous aider

    La quatrième chose est que vos tables semblent obèses.... A lire :
    https://blog.developpez.com/sqlpro/p...mances_petites

    Enfin, indentez vos requêtes... C'est illisible. Utilisez des alias de table au lieu du nom complet !


    A +

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 898
    Points : 53 139
    Points
    53 139
    Billets dans le blog
    6
    Par défaut
    Pour éliminer le KEY LOOKUP, vous pouvez utiliser l'indicateur de table FORCESCAN dans la définition de la vue... Mais ce sera pire !

    Enfin, je ne pense pas que la directive SCHEMABINDING soit d'un quelconque intérêt dans votre cas. Pire, elle empêchera la modification des tables (ALTER TABLE...).

    A +

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Tu peux aussi rendre ton index plus couvrant en incluant la colonne dans le key lookup mais dans ce cas (en me basant sur ton plan d'exécution) il faudrait voir si tu y gagnes vraiment. Vu de loin, je n'ai pas l'impression.

    ++

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/05/2016, 12h24
  2. Réponses: 12
    Dernier message: 22/06/2006, 10h26
  3. Plan d' exécution
    Par rod59 dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 15/06/2006, 21h50
  4. Comparer des plan d'exécution
    Par sygale dans le forum Oracle
    Réponses: 7
    Dernier message: 06/04/2006, 17h58
  5. Mon "plan de carrière" qu'en pensez-vous?
    Par G.D.O dans le forum Emploi
    Réponses: 30
    Dernier message: 18/04/2005, 11h29

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