![]() |
Inner Join o ANSI? Hola, queria saber que opcion es mejor a la hora de hacer una consulta a mi base de datos en Access: Con Inner Join: SELECT Facturas.*, Albaranes.* FROM Facturas INNER JOIN Albaranes ON Facturas.IdAlbaran = Albaranes.IdAlbaran WHERE Facturas.IdCliente = 325 ...o en formato ANSI: SELECT Facturas.*, Albaranes.* FROM Facturas, Albaranes WHERE Facturas.IdAlbaran = Albaranes.IdAlbaran AND Facturas.IdCliente = 325 Por ahi he leido que Oracle no soporta Inner Join, y que es un mal uso del SQL. Lo que quiero saber es cual es mas versatil si algun dia tengo que migrar de base de datos. Muchas Gracias! :adios: |
Re: Inner Join o ANSI? Hola i_e_s27, que yo sepa INNER JOIN es ANSI, y de hecho tanto el JOIN implícito como el explícito es ANSI (auque puedo estar equivocado). Hablando de un JOIN externo, entonces para que sea ANSI deberías utilizar el modificador OUTER, pero para el interno, sirve indistintamente. Saludos |
Re: Inner Join o ANSI? Ahh, gracias por sacarme la duda :-) Ahora tengo el problema de que quise implementar esto, y me tira este error: Tipo de error: ADODB.Recordset (0x800A0CC1) No se encontró el elemento en la colección que corresponde con el nombre o el ordinal pedido. En la linea marcada en rojo: Código: If Request.form("subcategoria") = "" ThenYo tengo 3 tablas: Una que tiene los productos, con su id, nombre, la categoria a la que pertenecen (en ID), y la subcategoria a la que pertenecen (en ID) Una donde tengo las categorias que tiene: Id de la categoria, Nombre Y la ultima donde estan las subcategorias tiene: Id de la subcategoria, nombre, Id de la categoria a la que pertenece. La relacion que deseo establecer esta marcada con colores. Gracias por la ayuda! |
Re: Inner Join o ANSI? Hola de nuevo, el error es que a tu recordset no le interesa de donde viene el dato, es decir, tabla.campo no es correcto, con el nombre del campo basta: rsProductos("nombre_subcategoria") Saludos |
Re: Inner Join o ANSI? :aplauso: Gracias!!! Ahi andubo! :-) |
Re: Inner Join o ANSI? Aunque ahora me surgio una duda hipotetica... Que pasaria si yo tengo 2 tablas, y en las dos tengo un campo que se llama id, como hago para mostrar el id de una u otra respectivamente? |
Re: Inner Join o ANSI? Utilizas un alias: Código: SELECT tabla1.campo1, tabla2.campo1 as otrocampo FROM tabla1 INNER JOIN tabla2 ON tabla1.id = tabla2.id |
Re: Inner Join o ANSI? Un alias? jaja, que bueno, jamas se me hubiese ocurrido. Muchisimas gracias otra vez! :-) |
| La zona horaria es GMT -6. Ahora son las 19:12. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.