Consultar dos tablas sql

Sql select from multiple tables without join

A veces es difícil saber qué sintaxis SQL utilizar cuando se combinan datos que abarcan varias tablas. A continuación, se describen algunos de los métodos más utilizados para consolidar las consultas de varias tablas en una única sentencia.Sintaxis SQL
Si necesitas un repaso de la sintaxis SQL, lee estos artículos: “Conceptos básicos de SQL I: Consultas de datos” cubre la terminología de las bases de datos y los cuatro tipos de consultas básicas: Opciones de la sentencia SELECT” cubre la sentencia SELECT en detalle y explica las funciones agregadas.
ON tabla1.columna1 = tabla2.columna1;SubconsultasLas subconsultas, o sentencias de subselección, son una forma de utilizar un conjunto de resultados como recurso en una consulta. Suelen utilizarse para limitar o refinar los resultados en lugar de ejecutar varias consultas o manipular los datos en la aplicación. Con una subconsulta, puede hacer referencia a tablas para determinar la inclusión de datos o, en algunos casos, devolver una columna que es el resultado de una subselección.El siguiente ejemplo utiliza dos tablas. Una tabla contiene realmente los datos que me interesa devolver, mientras que la otra ofrece un punto de comparación para determinar qué datos son realmente interesantes.SELECT column1 FROM table1 WHERE EXISTS ( SELECT column1 FROM table2 WHERE table1.column1 = table2.column1 );Un factor importante sobre las subconsultas es el rendimiento. La comodidad tiene un precio y, en función del tamaño, el número y la complejidad de las tablas y las sentencias que se utilicen, es posible que se quiera permitir que la aplicación se encargue del procesamiento. Cada consulta se procesa por separado en su totalidad antes de ser utilizada como recurso para su consulta principal. Si es posible, el uso creativo de las sentencias JOIN puede proporcionar la misma información con menos tiempo de retraso.Sentencias JOIN y subconsultas

Donde

Las tablas relacionadas de una gran base de datos se unen mediante el uso de claves externas y primarias o lo que se suele denominar columnas comunes. La posibilidad de unir tablas permite añadir más significado a la tabla de resultados que se produce. Para unir un número ‘n’ de tablas en una consulta, se necesitan un mínimo de (n-1) condiciones de unión. Basándose en las condiciones de unión, Oracle combina el par de filas que coinciden y muestra la que satisface la condición de unión.
La palabra clave NATURAL puede simplificar la sintaxis de un equijoin.Un NATURAL JOIN es posible siempre que dos (o más) tablas tengan columnas con el mismo nombre, y las columnas sean compatibles con el join, es decir, que las columnas tengan un dominio de valores compartido.La operación join une filas de las tablas que tienen valores de columna iguales para las mismas columnas con nombre.
Considere la relación de uno a varios entre las tablas DEPARTAMENTOS y EMPLEADOS.Cada tabla tiene una columna llamada ID_Departamento.Esta columna es la clave primaria de la tabla DEPARTAMENTOS y una clave externa de la tabla EMPLEADOS.

Comentarios

1Comienza aquí – Introducción2Sentencia SELECT3Funciones de agregación4Cláusula GROUP BY5Cláusula HAVING6CláusulaORDER BY7Combinación de Condiciones y Operadores Booleanos8IN y BETWEEN9Funciones Matemáticas10Juntas de Tablas, una necesidad11Interpretación de SQL12Publicidad en SQLCourse.com13Otros Enlaces Tutoriales
Uniones de Tablas, una necesidadTodas las consultas hasta este punto han sido útiles con la excepción de una gran limitación – es decir, usted ha estado seleccionando de una sola tabla a la vez con su sentencia SELECT. Ha llegado el momento de presentarle una de las características más beneficiosas de los sistemas de bases de datos relacionales y SQL: el “Join”. En pocas palabras, el “Join” hace que los sistemas de bases de datos relacionales sean “relacionales”.
Las uniones pueden explicarse más fácilmente demostrando lo que sucedería si se trabajara con una sola tabla y no se pudiera utilizar las “uniones”. Esta base de datos de una sola tabla también se denomina a veces “tabla plana”. Digamos que tienes una base de datos de una sola tabla que se utiliza para llevar un registro de todos tus clientes y lo que compran en tu tienda:

Seleccionar dos tablas en una consulta

Cuando nuestros datos estaban todos en una sola tabla, podíamos recuperar fácilmente una fila concreta de esa tabla para obtener todos los datos pertinentes que necesitábamos para una consulta concreta. Por ejemplo, si observamos nuestra tabla sin normalizar, si queremos información sobre los libros que ha sacado “Juan Pérez”, podríamos utilizar una simple consulta SELECT como SELECT * WHERE nombre_completo = “Juan Pérez”. Esto nos devolvería las dos primeras filas de esa tabla, que contienen información como el título y el autor del libro, y las fechas de salida y devolución.
SQL gestiona las consultas en más de una tabla mediante el uso de JOINs. Los JOINs son cláusulas en las sentencias SQL que enlazan dos tablas, normalmente basadas en las claves que definen la relación entre esas dos tablas. Hay varios tipos de JOINs: INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER y CROSS; todos hacen cosas ligeramente diferentes, pero la teoría básica detrás de todos ellos es la misma. Veremos cada tipo de JOIN, pero primero repasaremos la sintaxis general que comparten las sentencias JOIN.

Acerca del autor

admin

Ver todos los artículos