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

CONCAT en MSSQL

Estas en el tema de CONCAT en MSSQL en el foro de SQL Server en Foros del Web. Hola, Por que no existe la función para mssql?, lo ejecuto desde php pero me da error 'CONCAT' no es un nombre de función reconocido ...
  #1 (permalink)  
Antiguo 01/12/2008, 15:54
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 18 años
Puntos: 56
CONCAT en MSSQL

Hola, Por que no existe la función para mssql?, lo ejecuto desde php pero me da error 'CONCAT' no es un nombre de función reconocido, en mysql siempre me va bien, o talvez tiene otro nombre, de antemano gracias.
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #2 (permalink)  
Antiguo 01/12/2008, 16:05
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 11 meses
Puntos: 38
Respuesta: CONCAT en MSSQL

Siendo los dos campo tipo caracter...

Código:
Select campo1 + campo2
From  MiTabla
Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 01/12/2008, 16:19
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 18 años
Puntos: 56
Respuesta: CONCAT en MSSQL

No quiero concatenar campos, si no.. strings

SELECT COUNT(*) +'Texto'+(SELECT count(*) FROM Members) -> Error
SELECT CONCAT(COUNT(*) +'Texto' +(SELECT count(*) FROM Members)) -> Error en MSSQL
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #4 (permalink)  
Antiguo 01/12/2008, 16:33
Avatar de Thumper  
Fecha de Ingreso: agosto-2004
Ubicación: Jesús María - Lima - Perú
Mensajes: 270
Antigüedad: 20 años, 3 meses
Puntos: 6
Respuesta: CONCAT en MSSQL

El error que te sale es porque estas tratando de concatenar un numerico con un string:

Código con error:

Cita:
declare @table table( valint int)

insert into @table values(1)
insert into @table values(2)
insert into @table values(3)


select 'cantidad: ' + count(*) from @table

"Server: Msg 245, Level 16, State 1, Line 8
Syntax error converting the varchar value 'cantidad: ' to a column of data type int."
Código sin error:

Cita:
declare @table table( valint int)

insert into @table values(1)
insert into @table values(2)
insert into @table values(3)


select 'cantidad: ' + cast(count(*) as varchar) from @table
__________________
Martín Alexis Valdivia S.
-----------------------------
"Quisiéramos cambiar el mundo, pero Dios no nos daría el código fuente." CAP
"Si Saber No Es Un Derecho, Seguro Será Un Izquierdo." WD
  #5 (permalink)  
Antiguo 01/12/2008, 16:55
Avatar de reel  
Fecha de Ingreso: febrero-2004
Ubicación: Managua, Nicaragua
Mensajes: 496
Antigüedad: 20 años, 9 meses
Puntos: 1
Respuesta: CONCAT en MSSQL

COUNT(*) es un entero y 'Texto' es string ....

Tienes que hacer un cast .... CAST(COUNT(1) AS VARCHAR) + 'tEXTO', algo obvio no?
__________________
Leer es Saber, REEL.
Mi Blog
  #6 (permalink)  
Antiguo 01/12/2008, 17:10
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 18 años
Puntos: 56
Respuesta: CONCAT en MSSQL

Probe lo mismo, el error que tenía fue en los parentesis

$rank_q = mssql_query("SELECT CAST(COUNT(*)+1 AS varchar(10)) +'/'+ CAST((SELECT COUNT(*) FROM Members) AS varchar(10)) FROM Members WHERE Country=3");

Gracias a todos.
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
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:13.