![]() |
Columna calculada en base a otra columna calculada
¡Buen día a todos!
Emigrando una base de datos de Access a Firebird, descubrí que ya no puedo hacer una consulta SQL Select, donde una de sus columnas sea calculada en base a otra columna calculada. MS Access permite la sentencia SQL: Select ID, (ID + 1) AS ID2, (ID2 + 1) AS ID3 From CLIENTES Pero Firebird genera un error de "campo desconocido" al referirme a ID2 para calcular la columna ID3: Select ID, (ID + 1) AS ID2, (ID2 + 1) AS ID3 From CLIENTES El sencillo ejemplo que expongo es para dar a entender mejor el problema, pero el caso real calcula ID2 en base a una subconsulta Select (no una simple suma). No quisiera repetir esa subconsulta en cada lugar de la sentencia donde se necesite, me gustaría saber si existe una alternativa mejor. Agradezco de antemano sus aportaciones. Atentamente, Al González :) |
Hola Al.
Podes usar una vista "intermedia", que tenga la columna calculada como un atributo... Algo como Código:
Create View clientes_intermedio (id, id2) AS ;) |
La franja horaria es GMT +2. Ahora son las 12:49:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi