Je travaille avec 2 tables liées dans un environnement Microsoft SQL Server 2008 qui sont connectées via un GUID. Dans une table, le champ a le type varchar(50)
, l'autre est correctement types comme uniqueidentifier
. C'est évidemment mauvais, mais je ne peux pas changer cela maintenant parce qu'il est donné par un logiciel hérité.Conversion de type dans une colonne calculée persistante
La conversion que SQL Server doit effectuer à chaque jointure interne rend les requêtes terriblement lentes, car je ne peux pas utiliser d'index du tout. J'ai essayé d'ajouter une colonne calculée, qui est persistante, pour obtenir l'ID stocké en tant que uniqueidentifer
. De cette façon, je pourrais ajouter un index pour le faire fonctionner beaucoup plus vite probablement. J'ai échoué.
Est-ce que quelqu'un sait si je peux stocker une valeur explicitement convertie dans une colonne d'ordinateur. Si je peux, quelle est la formule à utiliser ici?
Cheers, Matthias
Merci, cela fonctionne très bien. La requête prend 4sec au lieu d'une demi-heure maintenant. :) –