日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL复习资料(六)——MySQL-多表联合查询

發(fā)布時間:2024/8/26 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL复习资料(六)——MySQL-多表联合查询 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

📋導讀📋

💝博客主頁:紅目香薰_CSDN博客-大數(shù)據(jù),MySQL,Java領域博主💝

?本文由在下【紅目香薰】原創(chuàng),首發(fā)于CSDN?

🤗2022年最大愿望:【服務百萬技術人】🤗

📋前言📋

本文屬于系列文章,分別為:

MySQL復習資料(一)——MySQL環(huán)境安裝

MySQL復習資料(二)——MySQL-DDL語句

MySQL復習資料(三)——MySQL-DML語句

MySQL復習資料(四)——MySQL-聚合函數(shù)

MySQL復習資料(五)——MySQL-索引

MySQL復習資料(六)——MySQL-多表聯(lián)合查詢

MySQL復習資料(七)——MySQL-存儲過程

MySQL復習資料(八)——MySQL-事務

MySQL復習資料(九)——MySQL-圖形化工具使用

📋正文📋

MySQL復習資料(六)——MySQL-多表聯(lián)合查詢

目錄

創(chuàng)建從表

兩表聯(lián)合查詢

笛卡爾積查詢

去笛卡爾積查詢

查詢結果篩選


創(chuàng)建從表

CREATE TABLE user_address (id int(8) NOT NULL AUTO_INCREMENT,uid int(8) NOT NULL,inName varchar(32) NOT NULL,inPhone varchar(11) NOT NULL,address varchar(200) NOT NULL,PRIMARY KEY (id) ) DEFAULT CHARSET=utf8; insert into user_address values (0,1,'superadmin','18112345671','hebei shijiazhuang'), (0,1,'admin','18112345672','guangxi nanning'), (0,2,'zhangsan','18112345673','heilongjiang haerbin'), (0,2,'zhangsan','18112345674','hubei wuhan'), (0,3,'lisi','18112345675','hebei zhangjiakou'), (0,4,'wangwu','18112345676','hebeisheng xingtai'), (0,5,'zhaoliu','18112345677','jiangwusheng hangzhoushi'), (0,9,'shigandang','18112345678','shanghaishi');

不必要加外鍵,如果需要添加,需要將MySQL的引擎改為【InnoDB】。

show create table users;

只有在【InnoDB】下才可以添加外鍵。

原因:禁止使用外鍵,如果要保證完整性,應由應用程式實現(xiàn)——參考《阿里內部mysql規(guī)范》

兩表聯(lián)合查詢

笛卡爾積查詢

select * from users,user_address;

共計查詢64條,計算方式:A表users 8條數(shù)據(jù),B表user_address 8條數(shù)據(jù),8*8=64條。

交叉相乘,相當于計算了兩個表的笛卡爾積。

去笛卡爾積查詢

select * from users,user_address where users.id=user_address.uid;

查詢結果篩選

由于有兩個id,需要說明都是誰的ID,故而需要進行單獨修改名稱,如果只有一個列名可以直接使用。

select u.id '用戶id',createDate,userName,passWord,age,phone '手機',introduce,a.id '地址id',inName '收獲人',inPhone '收貨人手機號',address '收貨人地址'?from users u,user_address a where u.id=a.uid;

在常規(guī)的數(shù)據(jù)基礎上做篩查即可。

總結

以上是生活随笔為你收集整理的MySQL复习资料(六)——MySQL-多表联合查询的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。