Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Concadenar resultados

Estas en el tema de Concadenar resultados en el foro de SQL Server en Foros del Web. Código PHP: $weaA  =  mssql_query ( "SELECT * FROM Account where ID='$user'" ); $rowA  =  mssql_fetch_row ( $weaA ); echo  $rowA [ 1 ];  ¿Como puedo concadenar los resultados que ...
  #1 (permalink)  
Antiguo 29/05/2011, 13:47
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años, 7 meses
Puntos: 25
Concadenar resultados

Código PHP:

$weaA 
mssql_query("SELECT * FROM Account where ID='$user'");
$rowA mssql_fetch_row($weaA);
echo 
$rowA[1]; 
¿Como puedo concadenar los resultados que aparecen así:

[email protected]
[email protected]
[email protected]

para que aparescan así:

[email protected], [email protected], [email protected]

?

PD: El "Where se va... ya que la idea es mostrar todos los resultados en una sola fila. Y el "*" será "Email, quedando así:
SELECT Email FROM Account


Gracias desde ya!

Última edición por dezagus; 29/05/2011 a las 13:52
  #2 (permalink)  
Antiguo 29/05/2011, 19:07
 
Fecha de Ingreso: mayo-2011
Ubicación: sinaloa
Mensajes: 150
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Concadenar resultados

$variable="";
$var="";

while($linea = mssql_fetch_row($consulta){
$var = $var. " ".$linea['Email'];
}
echo " ".$var ;
Esto funciona pero al principio te aparecera la 'COMA'.
busca la condicion para saber cuando es el ultimo resultado para añadirle una COMA
  #3 (permalink)  
Antiguo 30/05/2011, 08:22
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Concadenar resultados

Hola dezagus:

SQL Server proporciona una manera de obtener el resultado que quieres utilizando una especie de recursividad, podrías crear una función para hacer la concatenación e invocarla desde un simple select, para no tener que hacer uso de ciclos, la idea sería más o menos así:

Código SQL:
Ver original
  1. DECLARE @concatena VARCHAR(MAX)
  2. SET @concatena = ''
  3. SELECT @concatena  = @concatena + Email + ',' FROM Account
  4. print SUBSTRING(@concatena, 1, len(@concatena)-1)

Esta forma creo sería más eficiente que hacerlo con ciclos.

Finalmente una recomendación, no utilices código de otro lenguaje en este foro. existe un foro exclusivo para PHP, este es para SQL Server, por lo tanto sólo deberías colocar código SQL y/o TRANSACT-SQL.

saludos.
Leo
  #4 (permalink)  
Antiguo 30/05/2011, 10:33
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: Concadenar resultados

Cita:
Iniciado por leonardo_josue Ver Mensaje
Hola dezagus:

SQL Server proporciona una manera de obtener el resultado que quieres utilizando una especie de recursividad, podrías crear una función para hacer la concatenación e invocarla desde un simple select, para no tener que hacer uso de ciclos, la idea sería más o menos así:

Código SQL:
Ver original
  1. DECLARE @concatena VARCHAR(MAX)
  2. SET @concatena = ''
  3. SELECT @concatena  = @concatena + Email + ',' FROM Account
  4. print SUBSTRING(@concatena, 1, len(@concatena)-1)

Esta forma creo sería más eficiente que hacerlo con ciclos.

Finalmente una recomendación, no utilices código de otro lenguaje en este foro. existe un foro exclusivo para PHP, este es para SQL Server, por lo tanto sólo deberías colocar código SQL y/o TRANSACT-SQL.

saludos.
Leo
Muy de acuerdo, visto que SQL Server es de las pocas bases en la cual esta tecnica si funciona...

Etiquetas: resultados
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:06.