当前位置:网站首页>Multi table operation inner join query
Multi table operation inner join query
2022-07-04 19:41:00 【Soup key TJ】
Catalog
Multi table query classification
Multi table query data preparation
Multi table query classification
- Internal connection query
- External connection query
- Subquery
- Self association query
Multi table query data preparation
- Create a total of 5 Tables
- They are user tables , The order sheet , Classification list , Commodity list , In the middle of table
-- establish user surface CREATE TABLE user( id INT PRIMARY KEY auto_increment, -- user id name VARCHAR(20), -- User name age INT -- User age ); -- Add data INSERT INTO user VALUES (1,' Zhang San ',23); INSERT INTO user VALUES (2,' Li Si ',24); INSERT INTO user VALUES (3,' Wang Wu ',25); INSERT INTO user VALUES (4,' Zhao Liu ',26); -- Create order form CREATE TABLE orderlist( id INT PRIMARY KEY auto_increment, -- Order id number VARCHAR(20), -- The order no. uid INT, -- Foreign key field CONSTRAINT ou FOREIGN KEY (uid) REFERENCES user(id) ); -- Add data INSERT INTO orderlist VALUES (1,'hm001',1); INSERT INTO orderlist VALUES (2,'hm002',1); INSERT INTO orderlist VALUES (3,'hm003',2); INSERT INTO orderlist VALUES (4,'hm004',2); INSERT INTO orderlist VALUES (5,'hm005',3); INSERT INTO orderlist VALUES (6,'hm006',3); INSERT INTO orderlist VALUES (7,'hm007',NULL); -- Create commodity classification table CREATE TABLE category( id INT PRIMARY KEY auto_increment, -- Classification of goods id NAME VARCHAR(20) -- Category name ); -- Add data INSERT INTO category VALUES (1,' Mobile phone digital '); INSERT INTO category VALUES (2,' Computer office '); INSERT INTO category VALUES (3,' Tobacco, wine, tea and sugar '); INSERT INTO category VALUES (4,' Shoes and bags '); -- Create a product list CREATE TABLE product( id INT PRIMARY KEY auto_increment, -- goods id NAME VARCHAR(20), -- Name of commodity cid INT, -- Foreign key field CONSTRAINT cp_1 FOREIGN KEY (cid) REFERENCES category(id) ); -- Add data INSERT INTO product VALUES (1,' Huawei mobile phones ',1); INSERT INTO product VALUES (2,' Mi phones ',1); INSERT INTO product VALUES (3,' Lenovo computer ',2); INSERT INTO product VALUES (4,' Apple computer ',2); INSERT INTO product VALUES (5,' Chinese cigarettes ',3); INSERT INTO product VALUES (6,' Yuxi cigarette ',3); INSERT INTO product VALUES (7,' Family planning supplies ',NULL); -- Create middle table CREATE TABLE us_pro( upid INT PRIMARY KEY auto_increment, -- In the middle of table id uid INT, -- Foreign key field , It needs to be associated with the primary key of the user table pid INT, -- Foreign key field , It needs to be associated with the primary key of the commodity table CONSTRAINT up_1 FOREIGN KEY (uid) REFERENCES user(id), CONSTRAINT up_2 FOREIGN KEY (pid) REFERENCES product(id) ); -- Add data INSERT INTO us_pro VALUES (NULL,1,1); INSERT INTO us_pro VALUES (NULL,1,2); INSERT INTO us_pro VALUES (NULL,1,3); INSERT INTO us_pro VALUES (NULL,1,4); INSERT INTO us_pro VALUES (NULL,1,5); INSERT INTO us_pro VALUES (NULL,1,6); INSERT INTO us_pro VALUES (NULL,1,7); INSERT INTO us_pro VALUES (NULL,2,1); INSERT INTO us_pro VALUES (NULL,2,2); INSERT INTO us_pro VALUES (NULL,2,3); INSERT INTO us_pro VALUES (NULL,2,4); INSERT INTO us_pro VALUES (NULL,2,5); INSERT INTO us_pro VALUES (NULL,2,6); INSERT INTO us_pro VALUES (NULL,2,7); INSERT INTO us_pro VALUES (NULL,3,1); INSERT INTO us_pro VALUES (NULL,3,2); INSERT INTO us_pro VALUES (NULL,3,3); INSERT INTO us_pro VALUES (NULL,3,4); INSERT INTO us_pro VALUES (NULL,3,5); INSERT INTO us_pro VALUES (NULL,3,6); INSERT INTO us_pro VALUES (NULL,3,7); INSERT INTO us_pro VALUES (NULL,4,1); INSERT INTO us_pro VALUES (NULL,4,2); INSERT INTO us_pro VALUES (NULL,4,3); INSERT INTO us_pro VALUES (NULL,4,4); INSERT INTO us_pro VALUES (NULL,4,5); INSERT INTO us_pro VALUES (NULL,4,6); INSERT INTO us_pro VALUES (NULL,4,7);
Query principle
- Inner join queries are part of the data where two tables intersect ( Data associated with primary and foreign keys )
The query syntax
- Explicit inner connection
- select Name from Table name 1 [inner] join Table name 2 on Conditions
- Implicit inner join
- select Name from Table name 1, Table name 2 where Conditions
Relevant concepts
- Self join
- Concept : It is a special equivalent connection in inner connection query , The so-called self connection refers to the connection between a table and its current table
- The biggest feature : One table is regarded as two tables
- Connect yourself
- Equivalent connection
- Is in the keyword on The matching condition after is through = To achieve ;
- Equivalent connection is usually a table connecting another table
- Unequal value connection
- In keywords on Use in the post matching condition except = Inequality conditions implemented by relational operators other than (> >= < <= !=)
Example operation
- Explicit inner connection
- Query user information and corresponding order information
- Query user information and corresponding order information , names
- Query user name , Age and order number
-- Explicit inner connection -- Query user information and corresponding order information SELECT * FROM user INNER JOIN orderlist ON orderlist.uid=user.id; -- Query user information and corresponding order information , names SELECT * FROM user u INNER JOIN orderlist o ON o.uid=u.id; -- Query user name , Age and order number SELECT u.name, -- User name u.age, -- User age o.number -- The order no. FROM user u -- User table INNER JOIN orderlist o -- The order sheet ON o.uid=u.id;
- Implicit inner join
- Query user name , Age and order number
-- Implicit inner join -- Query user name , Age and order number SELECT u.name, -- User name u.age, -- User age o.number -- The order no. FROM user u, -- User table orderlist o -- The order sheet WHERE o.uid=u.id;
边栏推荐
- 1008 elevator (20 points) (PAT class a)
- 1002. A+B for Polynomials (25)(PAT甲级)
- Shell programming core technology II
- Mysql database basic operation -ddl | dark horse programmer
- @transactional滥用导致数据源连接池耗尽问题
- PolyFit软件介绍
- 1007 Maximum Subsequence Sum(25 分)(PAT甲级)
- Double colon function operator and namespace explanation
- Pytest 可视化测试报告之 Allure
- Shell programming core technology "three"
猜你喜欢
“只跑一趟”,小区装维任务主动推荐探索
Opencv functions and methods related to binary threshold processing are summarized for comparison and use
node_ Exporter deployment
黑马程序员-软件测试--09阶段2-linux和数据库-31-43修改文件权限字母发的说明,-查找链接修改文件,查找文件命令,链接文件,压缩解压方式,vi编辑器基本使用,
Explore the contour drawing function drawcontours() of OpenCV in detail with practical examples
在线文本行固定长度填充工具
BCG 使用之CBCGPProgressDlg进度条使用
牛客小白月赛7 谁是神箭手
Online text line fixed length fill tool
LM10丨余弦波动顺势网格策略
随机推荐
Specify the character set to output
BCG 使用之CBCGPTabWnd控件(相当于MFC TabControl)
Master the use of auto analyze in data warehouse
《工作、消费主义和新穷人》的微信读书笔记
Educational Codeforces Round 22 E. Army Creation
Shell 编程核心技术《一》
The kth largest element in the array
求2的n次方
Qt实现界面滑动切换效果
1008 elevator (20 points) (PAT class a)
牛客小白月赛7 谁是神箭手
BCG 使用之CBCGPProgressDlgCtrl进度条使用
English语法_名词 - 使用
C# 使用StopWatch测量程序运行时间
“只跑一趟”,小区装维任务主动推荐探索
Jetpack Compose 教程
Pointnet/Pointnet++点云数据集处理并训练
Is it safe to open an account at Great Wall Securities? How to open an account when buying stocks
1007 maximum subsequence sum (25 points) (PAT class a)
矩阵翻转(数组模拟)