MariaDB – Únete

En discusiones y ejemplos anteriores, exploramos la recuperación de una sola tabla o la recuperación de múltiples valores de múltiples fuentes. La mayoría de las operaciones de datos reales son mucho más complejas y requieren agregación, comparación y recuperación de varias tablas.

UNIONES permiten unir dos o más tablas en un objeto. Se utilizan con las sentencias SELECT, UPDATE y DELETE.

Revise la sintaxis general de la declaración usando JOIN como se muestra a continuación:

SELECT column
FROM table_name1
INNER JOIN table_name2
ON table_name1.column = table_name2.column;

Tenga en cuenta que la antigua sintaxis de JOINS usaba combinaciones implícitas, no palabras clave. Puede usar una cláusula WHERE para lograr una unión, pero las palabras clave son las mejores para la legibilidad, el mantenimiento y las mejores prácticas.

Las JUNTAS vienen en diferentes formas, como combinación izquierda, combinación derecha o combinación interna. Los diferentes tipos de unión ofrecen diferentes tipos de agregación basados ​​en valores o características comunes.

Utilice JOIN en la línea de comandos o con un script PHP.

Línea de comando

En la línea de comando, simplemente use el operador estándar –

root@host# mysql -u root -p password;
Enter password:*******
mysql> use PRODUCTS;
Database changed

mysql> SELECT products.ID_number, products.Nomenclature, inventory.inventory_ct
   FROM products
   INNER JOIN inventory
   ON products.ID_numbeer = inventory.ID_number;
+-------------+----------------+-----------------+
| ID_number   | Nomenclature   | Inventory Count |
+-------------+----------------+-----------------+
| 12345       | Orbitron 4000  | 150             |
+-------------+----------------+-----------------+
| 12346       | Orbitron 3000  | 200             |
+-------------+----------------+-----------------+
| 12347       | Orbitron 1000  | 0               |
+-------------+----------------+-----------------+

Script PHP usando JOIN

Usar mysql_query () una función para realizar una operación de unión –

<?php
   $dbhost="localhost:3036";
   $dbuser="root";
   $dbpass="rootpassword";
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);

   if(! $conn ) {
      die('Could not connect: '. mysql_error());
   }

   $sql="SELECT a.product_id, a.product_manufacturer, b.product_count   
      FROM products_tbl a, pcount_tbl b 
      WHERE a.product_manufacturer = b.product_manufacturer";

   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Could not get data: '. mysql_error());
   }

   while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
      echo "Manufacturer:{$row['product_manufacturer']} <br&gt ".
         "Count: {$row['product_count']} <br&gt ".
         "Product ID: {$row['product_id']} <br&gt ".
         "--------------------------------<br&gt";
   }

   echo "Fetched data successfullyn";
   mysql_close($conn);
?>

Tras la recuperación exitosa de datos, verá el siguiente resultado:

ID Number: 12345
Nomenclature: Orbitron 4000
Inventory Count: 150
--------------------------------------
ID Number: 12346
Nomenclature: Orbitron 3000
Inventory Count: 200
--------------------------------------
ID Number: 12347
Nomenclature: Orbitron 1000
Inventory Count: 0
--------------------------------------
mysql> Fetched data successfully

🚫