Ver Mensaje Individual
  #6 (permalink)  
Antiguo 08/10/2008, 14:59
karolanet
 
Fecha de Ingreso: mayo-2008
Mensajes: 11
Antigüedad: 16 años
Puntos: 0
Respuesta: crystal report + conexion a 2 bases de datos

Cita:
Iniciado por alexander21rr Ver Mensaje
EN EL SQL ME SALE UN ERROR MI SINTAXSI ES COMO SIGUE:

SELECT u.DNI,
u.Nombre,
u.Ape_P,
Contrato = ISNULL(u.contrato,''),
d.id_den,
d.Fecha_reg,
d.Fecha_fin,
d.Comen_den,
dir.Nombre, dir.Referencia, dir.Distrito, dir.d_via, dir.Zona, dir.Sed, dir.Codigovia,
r.Id_trab,
td.Id_Def,td.Descripcion,
dat.id_sub,
Fecha_sup = ISNULL(CONVERT(VARCHAR(12),dat.fech_sup),'') ,
Hora = ISNULL(dat.hora,''),
Observacion= ISNULL(dat.observacion,''),
Supervisor = ISNULL(( SELECT Nombre + ' ' + Ape_p
FROM TBLPERSONAL
WHERE Id_per = dat.id_per
),
''),
Tecnico = ISNULL(( SELECT Nombre + ' ' + Ape_p
FROM TBLPERSONAL
WHERE Id_per = dat.id_Serv
),
''),
Trabajo = ISNULL(( SELECT descripcion
FROM TBLACTIVIDAD
WHERE id_act = dat.id_act
),
''),
TODO = (SELECT a.* FROM OPENROWSET('SQLOLEDB','SERVER=SRVSQL;UID=SUPER;PWD =PWD,'EXEC ENERGIQT.DBO.OBTENER_DATOS 100600443') AS a)
FROM TblUsuario AS u INNER JOIN TblUserden AS ud ON u.dni = ud.dni INNER JOIN
Tbldenuncia AS d ON d.Id_Den=ud.Id_Den INNER JOIN
TblUbDen AS dir ON d.id_den=dir.id_den INNER JOIN
TblRegistrar AS r ON r.id_den = d.id_den INNER JOIN
TblTipoDeficiencia AS td ON td.id_def = d.id_def INNER JOIN
tblatencion AS dat ON dat.id_den = d.id_den
WHERE d.Id_Den = 'EOR0402012'

ESTE ES EL TIPO DE CONSULTA QUE HAGO PERO ME SALE UN ERROR
Sólo se puede especificar una expresión en la lista de selección cuando la subconsulta no se especifica con EXISTS.

Hola, estaba buscando ayuda para un error que me tiraba el sql y encontré la misma pregunta en este foro.

El error que me tira es:

Sólo se puede especificar una expresión en la lista de selección cuando la subconsulta no se especifica con EXISTS.

Me fijé y lo que yo estaba haciendo mal y veo que quién escribió lo de arriba también es:

SET @FECH = (SELECT * FROM FILTER_FIXED_DET WHERE ID_USER=1)

Y con lo siguiente se arregla:

SET @FECH = (SELECT FECH_DESDE FROM FILTER_FIXED_DET WHERE ID_USER=1)


El problema es que no podemos poner * en una subconsulta porque el sql no sabe qué campo queremos que tome.

Ya se que la consulta es vieja (del 2004) pero envío esto para que si a otro le pase sepa como arreglarlo.

Saludos.