Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-04-2005
ELINK ELINK is offline
Miembro
 
Registrado: mar 2005
Posts: 55
Poder: 20
ELINK Va por buen camino
if "0" then null, como?

Debo de aceptar que soy un novato en esto del SQL y debido ha eso biene mi pregunta:
como puedo hacer para que en una consulta sql en vez de "0" aparesca null( o sea cambiado por null)

original:
codi_prod seri1 seri2 seri3 seri4 total
coecmsm 0 1 0 0 1

ideal:
codi_prod seri1 seri2 seri3 seri4 total
coecmsm 1 1

(no es necesario que sume)

Última edición por ELINK fecha: 08-04-2005 a las 16:44:41.
Responder Con Cita
  #2  
Antiguo 08-04-2005
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
si usas SQL Server puedes usar ISNULL

select ISNULL( campo, 0) FROM Tabla
Responder Con Cita
  #3  
Antiguo 08-04-2005
ELINK ELINK is offline
Miembro
 
Registrado: mar 2005
Posts: 55
Poder: 20
ELINK Va por buen camino
y para FireBird 1.5?

Lo que quiero es: un valor "0" volverlo null
Responder Con Cita
  #4  
Antiguo 09-04-2005
fly fly is offline
Miembro
 
Registrado: abr 2005
Posts: 65
Poder: 20
fly Va por buen camino
Puedes crear una funcion que te convierta los 0 a NULL, haces una libreria con ella y la pones en las UDF del firebird y despues haces la cunsulta usando esa función.

Algo asín :

SELECT Cero2Null(seri1) AS seri1, Cero2Null(seri2) AS seri2 FROM Tabla_Seri WHERE...

va de maravilla, yo lo uso (con otra función claro está) y es la caña.

Saludos

Última edición por fly fecha: 09-04-2005 a las 06:26:43.
Responder Con Cita
  #5  
Antiguo 09-04-2005
ELINK ELINK is offline
Miembro
 
Registrado: mar 2005
Posts: 55
Poder: 20
ELINK Va por buen camino
mmm....

"Siento" que lo dices es correcto
Pero la verdad es que no se como realizar todo lo que me escribiste; exactamente desde el comienzo hasta "Algo asín :" luego para adelante no tengo problema, luego me puse a revisar la udf de firebird pero no entendi ni un poquito
Realmente te agradesería si me ayudaras a crear esa funcion
Responder Con Cita
  #6  
Antiguo 09-04-2005
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 23
Crandel Va por buen camino
proba con algo asi:

Código:
CREATE PROCEDURE Cero2Null (VALOR INTEGER) RETURNS (VALOR INTEGER)
AS 
BEGIN
  IF (VALOR = 0) THEN VALOR = NULL;
END^
no es UDF, nunca cree uno, pero creo que te deberia funcionar igual con procedimiento.
Eso si, tambien es mas lento.
__________________
[Crandel]
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 22:19:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi