![]() |
Ordenar por campo lookup
Tengo una tabla en interbase asociada a una query a la cual le he añadido un nuevo campo de tipo lookup para q me muestre el campo nombre que esta en otra tabla segun si su codigo coincide con el que esta en la tabla asociada a la query, el problema es que quiero poder mostrar en un grid los datos de la tabla y que los pueda mostrar ordenados por el nombre que coje de la segunda tabla (estilo select * from tabla order by nombre) pero al ser un campo lookup no se puede ordenar con un order by
|
Lo que quieres hacer sólo lo conseguirás si haces una Query con una join entre las dos talbas y entonces utilizar el order by
Algo así más o menos Código:
select * |
Bien ahora vamos a complicarlo un poquitin mas como podria hacerlo si las dos tablas se encuentran en bases de datos distintas??
una en db1.fdb y la otra en db2.fdb |
si accedes a las bases de datos mediante el BDE, mírate lo que dice la ayuda del Local SQL sobre las Heterogeneous joins
Cita:
|
El problema es q no hacedo mediante BDE sino por las IBOObject y no se cual sera su equivalente en este caso a database_reference.
A la base de datos accedo mediante un TIB_connection el cual tiene como referencia para acceder: 172.26.0.7:/datos/bd.fdb (uso dialecto 3) |
No se con IBO ya que nunca los he utilizado, pero con IBX o FIBPlus no se puede. Lo de las Heterogeneous joins es una característica del BDE que lo que hace, básicamente, es, internamente, lanzar un SQL sobre cada tabla para despues unirlas y, el resultado, es lo que devuelve al cliente
|
La franja horaria es GMT +2. Ahora son las 00:13:34. |
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