Pregunta

Estoy teniendo algunos problemas con la siguiente consulta:

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

Cuando les cada una de las consultas se ejecuten por separado sin la unión se ejecutan rápidamente (<5 segundos), pero cuando lo funciono el uso de la unión que está tomando para siempre para ejecutar (de hecho todo lo que dice se está ejecutando. No he visto se ejecute correctamente)

En OtherDB.dbo.Signatures el campo de firma es un varbinary (max) y en AppDB.dbo.Signatures el campo es una imagen que es por eso que estoy usando la expresión convertido. ¿Alguien sabe cuál podría ser el problema y cómo puedo ir sobre la fijación él?

Gracias

¿Fue útil?

Solución

Me pregunto si es porque está utilizando una UNION en lugar de un UNION ALL. UNIÓN por sí solo eliminará las filas duplicadas entre los conjuntos de datos. Esto puede ser la causa de un retraso en su campo blob. A ver si hay una diferencia usando UNION ALL.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top