2009-03-20 10 views
0

Nous avons combiné clé primaire avec des champs non, id et groupe no SQL mise à jour de requête

À partir d'Access, une condition WHERE telle que WHERE no = '' & groupno = '' exécute plus vite alors que la même chose ralentit les mises à jour dans SQL.

Une fois que nous aurons fourni un index individuel de & groupno, cela sera-t-il plus rapide?

Considère-t-elle cela comme une clé combinée si nous fournissons une clé primaire avec 3 trois champs et aucun index individuel basé sur ces champs?

Répondre

3

En général, il va préférer un index unique (en fournissant des valeurs pour les champs les plus à gauche) du point de vue de l'obtention rapide du filtrage.

En outre, plus vous touchez les champs indexés dans une mise à jour, plus le temps consacré à la maintenance de l'index est important. Faites attention de ne pas trop lire les horaires de faire quelque chose une fois pour les petits ensembles de données - vous pourriez facilement regarder la surcharge de la connexion à la place. Je suggère d'avoir un coup d'oeil dans le plan de requête via l'Analyseur de requêtes/SQL Server Management Studio - cela vous permettra de voir quel index il utilise réellement, donc vous ne sonderz pas dans l'obscurité.

0

Quelle version de SQL? Un index n'accélère pas l'interrogation des valeurs NULL car celles-ci ne sont pas placées dans les index, pour Oracle de toute façon.

Questions connexes