美文网首页
MySQL——普通的多表查询

MySQL——普通的多表查询

作者: 刘铁崧 | 来源:发表于2021-12-21 20:31 被阅读0次

第一种方式:无WHERE条件的笛卡尔积方式

运算结果为一张表
表中字段:集合多表中的所有字段,字段数=(表1字段数+表2字段数)
表中记录:表1的每条记录与表2的所有记录进行匹配,记录数=(表1记录数*表2记录数)
格式:SELECT 字段名 FROM 表名列表;
注意:
· 字段名的书写格式:字段名(单表);表名.字段名(多表)
· 字段名列表中的字段所涉及的表,一定包含在表名列表中
例子:

查询list1表和list2表的数据(多种写法)
SELECT * FROM list1,list2;
SELECT list1*,list2* FROM list1,list2;

查询name字段
SELECT list1.name,list2.name FROM list1,list2;

第二种方式:有WHERE条件的普通多表查询方式

格式:SELECT 字段名列表 FROM 表名列表 WHERE 条件
前提:多表之间必须有关联
例子:

份表

id province_id province_name
1 13000 河北省
2 14000 陕西省
3 15000 四川省

市表

id province_id city_name city_id
1 13000 石家庄市 131000
2 13000 沧州市 131001
3 14000 西安市 131002
4 15000 成都市 131003

县表

id city_id country_name country_id
1 131000 正安县 132100
2 131002 蓝田县 132110
3 131003 三台县 132111
4 131003 四台县 132112
查询省市信息
SELECT provincelist.province_name,citylist.city_name FROM provincelist,citylist
WHERE provincelist.province_id=citylist.city_id;              ///写明两个表的关联关系

查询省市县信息
SELECT provincelist.province_name,citylist.city_name,countrylist.country_name FROM provincelist,citylist,countrylist
WHERE provincelist.province_id=citylist.province_id AND citylist.city_id=countrylist.city_id;

单表多次复合查询案例

如下tasklist表,执行任务1需要先执行任务4,执行任务4要先执行任务2,以此类推
任务:查询每个任务的间接先行任务(如1的间接先行任务为2)

tasklist表

id task super_task country_id
1 任务1 4 132100
2 任务2 132110
3 任务3 1 132111
4 任务4 2 132112

代码:

SELECT A.id,B.super_task FROM tasklist AS A,tasklist AS B
WHERE A.super_task=B.id;

相关文章

  • MySQL——普通的多表查询

    第一种方式:无WHERE条件的笛卡尔积方式 运算结果为一张表表中字段:集合多表中的所有字段,字段数=(表1字段数+...

  • SQLAlchemy(四)

    知识要点: 1.多表查询 2.原生SQL的查询 多表查询 在MySQL中我们讲了多表查询,在SQLAlchemy中...

  • 2018-03-20

    MYSQL查询语句 MYSQL复杂操作语句 MYSQL多表查询方法 函数部分

  • 深入浅出MySQL(五)

    多表查询 MySQL中的多表联查 MySQL中多表查询分为三种形式: 笛卡尔积的形式 内连接的形式 外连接的形式 ...

  • mysql数据库-多表查询

    今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建及多表的查询 掌握MY...

  • Mysql-多表查询as索引

    1、Mysql多表查询2、information_schema 虚拟库3、索引 1、多表查询 方法(1) 根据需求...

  • 4/30day45_MySql多表

    回顾 MySQL多表查询&权限 今日目标 一 多表查询【重点...】 同时查询多张表获取到需要的数据组成完整的信息...

  • sql多表查询

    普通多表查询 嵌套多表查询 链接多表查询 左链接(会将左表的内容全部输出,没有需要补NULL) 右链接(会将右表的...

  • MySQL 多表操作

    day07-多表操作 今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建...

  • MySQL学习笔记二之单表查询与多表查询

    title: MySQL学习笔记二之单表查询与多表查询tags: MySQL 数据库categories: MyS...

网友评论

      本文标题:MySQL——普通的多表查询

      本文链接:https://www.haomeiwen.com/subject/tczzfrtx.html