MS SQL tiene una solución conveniente para la concatenación de un valor de columna de múltiples filas en un valor:¿Cómo elegir el nombre de columna devuelto en una consulta SELECT FOR XML?
SELECT col1
FROM table1
WHERE col2 = 'x'
ORDER by col3
FOR XML path('')
y que devuelve un buen conjunto de registros:
XML_F52E2B61-18A1-11d1-B105-00805F49916B
----------------------------------------
<col1>Foo</col1><col1>Bar</col1>
sólo el nombre de la columna en el conjunto de registros devuelto es bastante desagradable!
El nombre de columna parece incluir elementos aleatorios (o un GUID), y por lo tanto soy reacio a usarlo en mi aplicación (diferentes instancias o diferentes servidores pueden tener otro GUID). Desafortunadamente no puedo usar * para seleccionar el valor, y debido a las restricciones en la aplicación existente no puedo repetir las columnas devueltas, ya sea ...
¿Hay alguna manera de forzar el nombre de columna en el conjunto de registros devuelto a algo más ¿sensato?
debido a su respuesta, he encontrado solución para mi problema ... muchas gracias! –
¡Sintaxis extraña pero funciona! –