Je vais avoir quelques problèmes avec la requête suivante:Problèmes avec une requête Union avec un champ d'image/varbinary
SELECT v.idnum
,v.full_name
,convert(varbinary(max),s.signature) as Sig
FROM AppDB.dbo.v_People1 AS v INNER JOIN
OtherDB.dbo.Signatures AS s ON v.idnum = s.idnum
UNION
SELECT v.idnum
, v.full_name
, convert(varbinary(max), s.signature) as Sig
FROM AppDB.dbo.v_People2 AS v INNER JOIN
AppDB.dbo.Signatures AS s ON v.idnum = s.idnum
Quand je les dirige chacune des requêtes séparément sans l'union ils exécutent rapidement (< 5 secondes), mais lorsque je l'exécute en utilisant l'union, il faut une éternité pour l'exécuter (tout ce qu'il dit est en cours d'exécution, je ne l'ai pas vu fonctionner)
Dans OtherDB.dbo.Signatures, le champ de signature est un varbinary (max) et dans AppDB.dbo.Signatures le champ est une image qui est pourquoi j'utilise l'expression de conversion. Est-ce que quelqu'un sait ce que le problème pourrait être et comment je peux y remédier?
Merci
Ceci l'a corrigé. Merci! Pourquoi vérifier si une ligne était en double rend la tâche beaucoup plus lente? Il n'y avait que 40 lignes dans la première requête et environ 10 lignes dans la seconde – zSynopsis
Cela a à voir avec votre champ de blob, ils ne sont pas vraiment comparables (on ne peut pas non plus utiliser un DISTINCT), donc il était logique que l'UNION étouffer dessus. Je peux chercher une explication plus technique. – Brettski