# 连接两个数据表的用法:
FROM Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort # 语法格式可以概括为:
FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号 # 连接三个数据表的用法:
FROM (Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel # 语法格式可以概括为:
FROM (表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号 # 连接四个数据表的用法:
FROM ((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity # 语法格式可以概括为:
FROM ((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号 # 连接五个数据表的用法:
FROM (((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity) INNER JOIN Wedlock ON Member.Wedlock=Wedlock.Wedlock # 语法格式可以概括为:
FROM (((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号) INNER JOIN 表5 ON Member.字段号=表5.字段号

example

select resource_idc.uuid, resource_idc.name, resource_cabinet.uuid, resource_cabinet.alias from resource_idc
INNER JOIN resource_cabinet ON resource_idc.uuid = resource_cabinet.idc_uuid
order by resource_idc.uuid, resource_cabinet.alias;
+--------------------------------------+--------------+--------------------------------------+---------+
| uuid | name | uuid | alias |
+--------------------------------------+--------------+--------------------------------------+---------+
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 66f03a52-7716-454c-b69b-77863b40f871 | wxxq-b2 |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | ea6c9cf9-aa67-429a-b934-c602c7ffcf47 | wxxq-b3 |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | fb6e260a-e4c0-43d4-b00a-f33d41fee0de | wxxq-b4 |
| ffdba1b7-6f88-4f78-a1de-b737e682642b | 北京铜牛 | 6b54116c-c6d6-4901-85af-c956d09cfbd5 | bjtn-a1 |
+--------------------------------------+--------------+--------------------------------------+---------+
select resource_idc.uuid, resource_idc.name, resource_cabinet.uuid, resource_cabinet.alias, resource_rack.uid, resource_rack.host_uuid
from (resource_idc INNER JOIN resource_cabinet ON resource_idc.uuid = resource_cabinet.idc_uuid)
INNER JOIN resource_rack ON resource_cabinet.uuid = resource_rack.cabinet_uuid
where resource_cabinet.uuid='2c71ecba-4b14-4b94-a623-1f6154b740aa'
order by resource_rack.uid;
+--------------------------------------+--------------+--------------------------------------+---------+------+-----------+
| uuid | name | uuid | alias | uid | host_uuid |
+--------------------------------------+--------------+--------------------------------------+---------+------+-----------+
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 1 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 2 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 3 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 4 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 5 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 6 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 7 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 8 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 9 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 10 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 11 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 12 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 13 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 14 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 15 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 16 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 17 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 18 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 19 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 20 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 21 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 22 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 23 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 24 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 25 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 26 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 27 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 28 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 29 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 30 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 31 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 32 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 33 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 34 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 35 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 36 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 37 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 38 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 39 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 40 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 41 | NULL |
| eb4fb047-a4fd-44c2-9f10-15758187417a | 无锡新区 | 2c71ecba-4b14-4b94-a623-1f6154b740aa | wxxq-b1 | 42 | NULL |
+--------------------------------------+--------------+--------------------------------------+---------+------+-----------+

http://stackoverflow.com/questions/27900018/flask-sqlalchemy-query-join-relational-tables

many2many query

http://stackoverflow.com/questions/25392770/query-many-to-many-in-sqlalchemy/

sql & sqlalchemy join多个表的更多相关文章

  1. SQL JOIN\SQL INNER JOIN 关键字\SQL LEFT JOIN 关键字\SQL RIGHT JOIN 关键字\SQL FULL JOIN 关键字

    SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据. Join 和 Key 有时为了得到完整的结果,我们需要从两个或更多的表中获取结果.我们就需要执行 join. 数据库中的表 ...

  2. SQL INNER JOIN 关键字

    SQL INNER JOIN 关键字 在表中存在至少一个匹配时,INNER JOIN 关键字返回行. INNER JOIN 关键字语法 SELECT column_name(s) FROM table ...

  3. DataBase -- SQL INNER JOIN

    SQL INNER JOIN 关键字 在表中存在至少一个匹配时,INNER JOIN关键字返回行. INNER JIN关键字语法 SELECT column_name(s) FROM table_na ...

  4. SQL-W3School-高级:SQL INNER JOIN 关键字

    ylbtech-SQL-W3School-高级:SQL INNER JOIN 关键字 1.返回顶部 1. SQL INNER JOIN 关键字 在表中存在至少一个匹配时,INNER JOIN 关键字返 ...

  5. SQL基本操作——JOIN多表联查

    基本概念 join :用于根据两个或多个表中的列之间的关系,从这些表中查询数据. join和key:有时为了得到完整的结果,我们需要从两个或更多的表中获取结果.我们就需要执行 join.数据库中的表可 ...

  6. SQL Join连接大小表在前在后的重要性(小表在前提高执行效率)

    引用地址:https://blog.csdn.net/qq_30349961/article/details/82662550 http://blog.sina.com.cn/s/blog_6ff05 ...

  7. 图解SQL的Join 转自coolshell

    对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Codin ...

  8. 图解SQL的Join(转)

    对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Codin ...

  9. 关于sql中join

    对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Codin ...

随机推荐

  1. 6.docker常用命令

    docker 常见命令 更细的配置请参考官方文档 第一大部分容器生命周期管理 01 .docker run :创建一个新的容器并运行一个命令 $ docker run [OPTIONS] IMAGE ...

  2. C++基础之C++编译调试

     C++程序的实现(预处理,编译,连接)Linux平台编译gcc和g++都是GNU的编译器.1.对于.c后缀的文件,gcc把它当做是C程序:g++当做是C++程序:2.对于.cpp后缀的文件,gcc和 ...

  3. Linux ifconfig-etho文件参数详解

    1.ifcfg-eth0文件参数详解 DEVICE 网卡名称/网络接口的名称BOOTPROTO 系统启动地址协议 常用参数: none:不使用启动地址协议,none禁止DHCP bootp:BOOTP ...

  4. nodebrew

    创建: 2019/05/30 完成: 2019/05/30  安装  安装 curl -L git.io/nodebrew | perl - setup 更新nodebrew nodebrew sel ...

  5. JavaScript -- 常用的数组及字符串方法

    数组 var arr= new Array(); arr.push(); //在数组尾部添加一个元素,返回新的长度 *原数组发生变化 arr.pop(); //删除最后一个元素,返回的是被删除的元素 ...

  6. SQL Server 2012安装——.net framework 3.5离线安装

    前言 电脑用着一直很不舒服,所以就决定对电脑重新配置一番,在装数据库这里,可谓是屡装屡败.自己感觉太麻烦了,于是每次数据库装失败后,就重装系统,然后配置上网文档,这样一来,弄得自己挺恶心,这次很明显成 ...

  7. python 关于时区

    pytz提供了时区对象timezone 如果我们如此使用: tz = pytz.timezone('Asia/Shanghai') datetime.datetime(nYear, nMonth, n ...

  8. 需要命名空间管理器或 XsltContext。此查询具有前缀、变量或用户定义的函数 及 多属性节点查询

    第一个问题, 1. 首先需要引入命名空间, 2. 其次,在用xpath查找结点时,在selectNodes等方法中再次带入命名空间 如 XmlDocument doc = new XmlDocumen ...

  9. SP375 QTREE - Query on a tree

    题意大意 给定\(n\)个点的树,边按输入顺序编号为\(1,2,...n-1\),要求作以下操作: CHANGE \(i\) \(t_i\) 将第\(i\)条边权值改为\(t_i\),QUERY \( ...

  10. Travelling (三进制+状压dp)

    题目链接 #include <bits/stdc++.h> using namespace std; typedef long long ll; inline ll read(){ ,f= ...