2012-07-03 7 views
6

Estoy tratando esto:cómo concatenar% y el nombre de la columna en una declaración como

SELECT FacilityID, FacilityName, CMSProviderID, [Provider Number] 
FROM G2_Facility, SCIPHospitalCompare 
WHERE [Provider Number] LIKE '%' + CMSProviderID + '%'; 

Y me da:

Msg 245, Level 16, State 1, Line 1 
Conversion failed when converting the varchar value '%' to data type int. 

¿Qué estoy haciendo mal? Vi muchos ejemplos haciendo cosas como esta, pero por alguna razón simplemente no funciona en absoluto.

Gracias!

+0

¿Cuáles son los tipos de datos de '' Proveedor Number' y CMSProviderID'? –

Respuesta

4

Supongo que [Provider Number] o es un campo numérico?

convertir el campo numérico en una cadena de comparar los dos:

SELECT FacilityID, FacilityName, CMSProviderID, [Provider Number] 
FROM G2_Facility, SCIPHospitalCompare 
WHERE CAST([Provider Number] as nvarchar(50)) LIKE 
    '%' + CAST(CMSProviderID as nvarchar(50)) + '%'; 
+0

¡guau gracias! ¡No sé por qué no había pensado en esto! – TomShreds

Cuestiones relacionadas