![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Esto:
LEFT JOIN Bancos H ON SUBSTRING(A.Iban FROM 5 FOR 4) = H.Codigo AND A.IdCuenta = 'A' ¿No debería ir así? LEFT JOIN Bancos H ON (SUBSTRING(A.Iban FROM 5 FOR 4) = H.Codigo) AND (A.IdCuenta = 'A') |
|
#2
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Hay que tener en cuenta que existe unas UDF que implementan el substring y lo usan de una forma diferente, así que es bueno ver que en los códigos del UDF no se encuentre creado substring, también sría bueno saber que versión de Firebird usa? H.Codigo es un string o un int?
Por último y aunque no creo que afecte mucho podrías cambiar el orden a lo siguiente:
__________________
"Como pasa el tiempo..... ayer se escribe sin H y hoy con H" |
|
#4
|
||||
|
||||
|
Gracias por las respuestas.
Cita:
Cita:
Cita:
|
|
#5
|
||||
|
||||
|
¡Mi gozo en un pozo!
Al margen de que, efectivamente, había renombrado alguna columna y se me había olvidado el problema no era esa. Sigue dándome el mismo error; por si acaso he actualizado a la versión 2.5.4 de Firebird. Voy más allá: Estoy probando este otro código:
Las tablas son estas: Cita:
Cita:
Hasta donde veo el código es correcto; de hecho en una BB.DD. Paradox funciona sin ningún problema. Sin embargo usando tanto IBManager como IBExpert me da el mismo error: Cita:
|
|
#6
|
||||
|
||||
|
Si hace falta y alguien me puede ayudar le mando las tablas implicadas.
|
|
#7
|
||||
|
||||
|
Es que por lo visto tiene que ser "select substring" no en un "where".
Puedes crearte un Stored Procedure, algo asi como:
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#8
|
||||
|
||||
|
Hola Angel.Matilla.
Algo mas debe haber en juego. Reproduje la situación como la planteaste, ejecutando la misma consulta y no me dá ningún error. Ambiente: Código:
Windows 7 32 bit. Firebird 2.5.0 IBExpert 2015.6.17.1 Tabla PAISES: Código:
CODIGO NOMBRE ---------------- 156 CHINA 840 E.E.U.U. 124 CANADA Código:
ENTIDAD NOMBRE BIC -------------------------------------------- 00001 ICBC 000015600000 00002 Wells Fargo & Co 000084000000 00003 Bank of Nova Scotia 000012400000
Resultado: Código:
ENTIDAD NOMBRE BIC -------------------------------------------- 00001 ICBC 000015600000 00002 Wells Fargo & Co 000084000000 00003 Bank of Nova Scotia 000012400000 Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#9
|
||||
|
||||
|
A mi también me corre bien el query así tal cual está, con esos tipos de datos (osea BIC varchar(12) y CODIGO varchar(3),
por otro lado el query no es optimo y con muchos registros en ambas tamblas podría tomar mucho tiempo, lo puedes cambiar a algo similar a esto:
__________________
"Como pasa el tiempo..... ayer se escribe sin H y hoy con H" |
|
#10
|
|||||
|
|||||
|
Gracias a todos por las respuestas.
Cita:
Código SQL [-]SELECT SUBSTRING(Bic FROM 5 FOR 2) FROM Bancos me da el mismo error Cita:
Cita:
Cita:
Cita:
![]() Última edición por Angel.Matilla fecha: 18-07-2015 a las 11:49:54. |
|
#11
|
||||
|
||||
|
A lo mejor digo una tontería: ¿Puede tener algo que ver con la definición de la base de datos? Es que no se me ocurre otra cosa. La definición, que se hace por código, es esta:
Código:
IBDatabase1->Params->Clear();
IBDatabase1->DatabaseName = "Afiliados.gdb";
IBDatabase1->Params->Add("USER 'sysdba'");
IBDatabase1->Params->Add("PASSWORD 'masterkey'");
IBDatabase1->Params->Add("PAGE_SIZE 4096");
IBDatabase1->SQLDialect = 3;
IBDatabase1->CreateDatabase();
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Replace con substring en Firebird | nuxbaster | Firebird e Interbase | 3 | 18-01-2015 18:56:49 |
| select * en firebird | Carlos Lesca | Firebird e Interbase | 1 | 22-02-2011 21:45:40 |
| Select de Dos BD´s distintas en Firebird 2.1 | angelholberg | Conexión con bases de datos | 2 | 18-02-2009 19:55:10 |
| Problema con select first en Firebird | egostar | Firebird e Interbase | 20 | 17-07-2007 21:55:11 |
| error Select firebird 1.5 | ale21alito | Firebird e Interbase | 2 | 25-04-2005 20:20:03 |
|