Base de datos mysql (6): detallada, muy amigable para los principiantes

Crea una nueva base de datos

Inserte la descripción de la imagen aquí

  • Cree una tabla de proveedores e inserte datos
    Inserte la descripción de la imagen aquí
CREATE TABLE suppliers
(
 s_id   int   NOT NULL AUTO_INCREMENT,
 s_name  char(50) NOT NULL,
 s_city  char(50) NULL,
 s_zip   char(10) NULL,
 s_call  CHAR(50) NOT NULL,
 PRIMARY KEY (s_id)
) ;

Para demostrar las necesidades, necesitamos insertar datos

INSERT INTO suppliers(s_id, s_name,s_city, s_zip, s_call)
VALUES(101,'FastFruit Inc.','Tianjin','300000','48075'),
(102,'LT Supplies','Chongqing','400000','44333'),
(103,'ACME','Shanghai','200000','90046'),
(104,'FNK Inc.','Zhongshan','528437','11111'),
(105,'Good Set','Taiyuang','030000', '22222'),
(106,'Just Eat Ours','Beijing','010', '45678'),
(107,'DK Inc.','Zhengzhou','450000', '33332');

Inserte la descripción de la imagen aquí

  • Antes de consultar, observe la estructura de las dos tablas
    Inserte la descripción de la imagen aquí
    Inserte la descripción de la imagen aquí

1. Conexión interna

  • Utilice la consulta de unión interna entre la tabla de frutas y la tabla de proveedores
SELECT suppliers.s_id, s_name,f_name, f_price FROM fruits ,suppliers WHERE fruits.s_id = suppliers.s_id;

Inserte la descripción de la imagen aquí

  • Utilice la sintaxis de combinación interna para consultas de combinación interna
SELECT suppliers.s_id, s_name,f_name, f_price
FROM fruits
INNER JOIN suppliers ON fruits.s_id = suppliers.s_id;


Inserte la descripción de la imagen aquí

Crear otros pedidos de mesa

CREATE TABLE orders
(
 o_num int   NOT NULL AUTO_INCREMENT,
 o_date datetime NOT NULL,
 c_id  int   NOT NULL,
 PRIMARY KEY (o_num)
) ;

Inserte la descripción de la imagen aquí
Insertar datos en la tabla
Inserte la descripción de la imagen aquí

2. Conexión izquierda

SELECT customers.c_id, orders.o_num
FROM customers LEFT OUTER JOIN orders
ON customers.c_id = orders.c_id;


Inserte la descripción de la imagen aquí

3. Conexión correcta

SELECT customers.c_id, orders.o_num
from customers RIGHT OUTER JOIN orders
ON customers.c_id = orders.c_id;


Inserte la descripción de la imagen aquí

4. Consulta de combinación de condición compuesta

SELECT customers.c_id, orders.o_num
FROM customers INNER JOIN orders
ON customers.c_id = orders.c_id AND customers.c_id = 10001;
SELECT suppliers.s_id, s_name,f_name, f_price
FROM fruits INNER JOIN suppliers
ON fruits.s_id = suppliers.s_id
ORDER BY fruits.s_id;


Inserte la descripción de la imagen aquí

  • Utilice la consulta de combinación interna entre la tabla de frutas y la tabla de proveedores. Antes de realizar la consulta, verifique la estructura de las dos tablas
SELECT suppliers.s_id, s_name,f_name, f_price
FROM fruits ,suppliers
WHERE fruits.s_id = suppliers.s_id;
  • Utilice la sintaxis INNER JOIN para consultas de unión interna entre la tabla de frutas y la tabla de proveedores
SELECT suppliers.s_id, s_name,f_name, f_price
FROM fruits INNER JOIN suppliers
ON fruits.s_id = suppliers.s_id;
  • Consultar otros tipos de frutas proporcionados por los proveedores de frutas con f_id = 'a1'
SELECT f1.f_id, f1.f_name
FROM fruits AS f1, fruits AS f2
WHERE f1.s_id = f2.s_id AND f2.f_id = 'a1';
  • En la tabla de clientes y la tabla de pedidos, consulte a todos los clientes, incluidos los clientes sin pedidos, la sintaxis SQL es la siguiente
SELECT customers.c_id, orders.o_num
FROM customers LEFT OUTER JOIN orders
ON customers.c_id = orders.c_id;
  • En la tabla de clientes y la tabla de pedidos, consulte todos los pedidos, incluidos los pedidos sin clientes
SELECT customers.c_id, orders.o_num
from customers RIGHT OUTER JOIN orders
ON customers.c_id = orders.c_id;
  • En la tabla de clientes y la tabla de pedidos, use la sintaxis INNER JOIN para consultar la información del pedido del cliente cuyo ID es 10001 en la tabla de clientes
SELECT customers.c_id, orders.o_num
FROM customers INNER JOIN orders
ON customers.c_id = orders.c_id AND customers.c_id = 10001;
  • Use la sintaxis INNER JOIN entre la tabla de frutas y la tabla de proveedores para la consulta de unión interna y ordene los resultados de la consulta
SELECT suppliers.s_id, s_name,f_name, f_price
FROM fruits INNER JOIN suppliers
ON fruits.s_id = suppliers.s_id
ORDER BY fruits.s_id;

Continúe con la siguiente parte ------------

Revise los primeros cinco artículos:

Base de datos mysql (1): detallada, muy amigable para los principiantes

Base de datos Mysql (dos): detallada, muy amigable para los principiantes

Base de datos Mysql (tres): detallada, muy amigable para los principiantes

Base de datos Mysql (cuatro): detallada, muy amigable para los principiantes

Base de datos mysql (5): detallada, muy amigable para los principiantes

Supongo que te gusta

Origin blog.csdn.net/qq_43078445/article/details/108352419
Recomendado
Clasificación