Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-02-2008
fcios fcios is offline
Miembro
 
Registrado: jul 2003
Posts: 108
Poder: 21
fcios Va por buen camino
Question Create view con campo calculado o condicionado

Hola, gracias por tu ayuda,

necesito crear una vista con un campo condicionado, por ejemplo si el campo2='A' que muestre 'AAAA' , si es 'B' 'BBBB' sino 'OTRA'
esto lo debe hacer firebird no el evento calculated del dataset

por ejemplo para crear una tabla con un campo calculado hago

CREATE TABLE TABLA5 (
campo1 INTEGER NOT NULL,
campo2 CHAR(1) NOT NULL,
CALC2 COMPUTED BY ((CASE
WHEN campo2='A' then 'AAAAA'
WHEN campo2='B' then 'BBBBBB'
ELSE 'OTRA' END))
);

una vista SIN el campo calculado seria

CREATE VIEW V3( CAMPO1, CAMPO2 )
AS
select campo1,campo2
from TABLA5
where campo1 = 1;

pero me dá error si quiero crear una vista con un campo calculado, no me deja colocar la palabra computed por ningún lado

Gracias
Responder Con Cita
  #2  
Antiguo 01-02-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Si estas usando FireBird 1.5 o superior puedes hacer uso del case asi:

Código SQL [-]
select campo1, 
       CASE campo2
         WHEN 'A' THEN 'AAAA'
         WHEN 'B' THEN 'BBBB'
       ELSE 'OTRA'
       END campo2
from TABLA5

Espero te sirva .
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 01-02-2008
fcios fcios is offline
Miembro
 
Registrado: jul 2003
Posts: 108
Poder: 21
fcios Va por buen camino
Smile

Sí gracias, me quedó

CREATE VIEW V2( CAMPO1, CAMPO2, calculado )
AS
select campo1,campo2,
CASE campo2
WHEN 'A' THEN 'AAAA'
WHEN 'B' THEN 'BBBB'
ELSE 'OTRA'
END campo2
from TABLA5
where campo1 = 1;
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Pasar un campo calculado a un campo del mismo DbGrid maravert Conexión con bases de datos 3 12-05-2006 00:31:30
Campo calculado sercornejov MySQL 3 09-08-2005 02:54:35
Campo de bd calculado davidgaldo MS SQL Server 3 20-05-2005 15:50:22
create view en delphi piyugo SQL 3 02-09-2004 00:33:00


La franja horaria es GMT +2. Ahora son las 11:35:28.


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