Cuestión : Ms SQL 2005, secuencia partida.

Hola, tengo una columna con un valor como esto:     v1, v2, v3, v4, v5

And ahora que quiero conseguir datos como esto: ¿el
v1
v2
v3
v4
v5

How puede yo lo hace con la declaración selecta?
class= del

Respuesta : Ms SQL 2005, secuencia partida.

Primero crear la función debajo…
Entonces utilizar esta pregunta:

>> seleccionar [columna] de [la tabla]

Seleccionar X.one, a.*
[Tabla] de a
externo aplicar dbo.multirow (a.Text) X

Nota: Usted puede utilizar realmente cualquiera de las dos funciones abajo, pero puesto que estoy dando una solución (externa aplicarse) I pensé que empujaría mi versión de la fractura (usar CTE en el servidor 2005 del SQL).
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
si el object_id (“dbo.multiRow ") no es nulo
caer la función dbo.multiRow
IR
crear la función dbo.multiRow (@data varchar (máximo), los @delims varchar (10))
las vueltas tabulan como vuelta
con el cte (uno, rem)
como
(
selecto
	rtrim (ltrim (DEJADO (@data, charindex (@delims, @data+@delims) - 1))),
	subsecuencia (@data, charindex (@delims, @data+@delims) +LEN (@delims+'. ') - 1, LEN (@data))
donde no está nulo el nullif (@data, '')
unión toda
selecto
	rtrim (ltrim (DEJADO (rem, charindex (@delims, rem+@delims) - 1))),
	subsecuencia (rem, charindex (@delims, rem+@delims) +len (@delims+'. ') - 1, LEN (rem))
de cte
donde no está nulo el nullif (rem, '')
)
seleccionar uno de cte donde no está nulo el nullif (uno, '')
IR
Otras soluciones  
 
programming4us programming4us