mysql 三个表连接查询

权限表(permission)10


字段名称


类型


约束


描述


authorityid


integer


Pk

not null


权限流水号id    PK


userNameId


int


not null


用户名id   FK


functionid


integer


Not null


功能 id    FK


lookPermission


int


not null


浏览


addPermission


int


not null


添加


editPermission


int


not null


编辑


deletePermission


int


not null


删除


checkPermission


int


not null


审核


againstrCheckPermission


int


not null


反审核


statementPermission


int


not null


报表

功能模块表(functionComponents)3


字段名称


类型


约束


模块名称描述


functionCpId


integer


pk


功能id   PK


funDescribe


Varchar(100)


not null


模块名称


otherInfo


Varchar(500)


not null


备注

用户表(userInfo)


字段名称


类型


约束


描述


userNo


integer


Pk

not null


权限流水号id    PK


userName


varchar2(20)


not null


用户名id   FK


userPwd


varchar2(20)


not null


浏览


role


varchar2(20)


not null


浏览

查询出用户对应的功能的权限

刚开始,我用的是子查询,没有实现

Select  userNo ,userInfo.userName, userInfo.userPwd, funDescribe, lookPermission, addPermission, editPermission, deletePermission, checkPermission, againstrCheckPermission, statementPermission  from  userInfo, permission, functionComponents

改为:

Select  userNo ,userInfo.userName, userInfo.userPwd, funDescribe, lookPermission, addPermission, editPermission, deletePermission, checkPermission, againstrCheckPermission, statementPermission  from  userInfo, permission, functionComponents group by userNo

同样不对!

后来就换成,三个表内连接的查询

Create view ` userFunPermission `AS

Select  userNo ,userInfo.userName, userInfo.userPwd, funDescribe, lookPermission, addPermission, editPermission, deletePermission, checkPermission, againstrCheckPermission, statementPermission  from  userInfo, permission, functionComponents

可以了!

时间: 2024-10-03 15:01:46

mysql 三个表连接查询的相关文章

Yii的Relational Active Record三张表连接查询

需求如下: 查询book表信息,同时关联entitystags表,以entitystags的字段eid关联book的主键,再关联查询tags表,以entitystags表的tid字段关联tags表的主键id 同时读出这三张表的信息来,在Yii可以如下处理,先在relations方法中声明三张表的关系,在控制器中,以with表明渴求式调用,即可,代码如下: 在book的model文件中声明关系: public function relations(){ return array( 'entitys

MySQL(三) 数据库表的查询操作【重要】

序言 1.MySQL表操作(创建表,查询表结构,更改表字段等), 2.MySQL的数据类型(CHAR.VARCHAR.BLOB,等), 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对于INNER JOIN(内连接).LEFT JOIN(左连接).RIGHT JOIN(右连接)等一些复杂查询. 通过本节的学习,可以让你知道这些基本的复杂查询是怎么实现的,但是建议还是需要多动手去敲,虽然理解了什么是内连接等,但是从理解到学会,是完全不一样的感觉. --WH 一.单表查询 1.1.查

Mysql 表连接查询

1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行.       2.外联接.外联接可以是左向外联接.右向外联接或完整外部联接.     在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定:     1)LEFT  JOIN或LEFT OUTER JOIN     左向外联接的结果集包括  LEF

Mysql表连接查询

原文地址: https://www.cnblogs.com/qiuqiuqiu/p/6442791.html 1.内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符).包括相等联接和自然联接. 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行. 2.外联接.外联接可以是左向外联接.右向外联接或完整外部联接. 在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定: 1)LEFT JOIN或L

MySQL多表连接查询

多表连接查询: create table class( cid int primary key auto_increment, cname varchar(20) )default charset='utf8'; create tablr stu( sid int primary key auto_increment, sname varchar(20). cid int );default charset='utf8'; insert into class(name) values('一班')

随便玩玩之PostgreSQL(第三章)表连接查询

随便玩玩之PostgreSQL(第三章)表连接查询 随便玩玩之PostgreSQL 未经授权不得转载

MySql数据库再学习——简述多表连接查询的自我理解

一:序 这几天在学习数据库部分,因为在学校听课也是比较迷糊,经过学习之后感觉现在思路比较清楚,对于多表连接查询操作有了一个新的认识. 二:假设 假设现在有两个表 :A ,B. 三:两表之间的连接方式 两个表的连接方式分为,内,外,交叉三种. 内连接的查询方式又分为隐式和显式两种. 外连接的查询方式又分为左,右两种. 交叉是将两个表的记录做乘积,因为得到的记录很大程度上没有直接联系,所以交叉连接查询基本没什么意义. 四:内连接 内连接的关键词:inner join...(inner可以省略) 隐式

(MYSQL学习笔记2)多表连接查询

3种连接方式的区别: INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录. LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录. RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录. 3个表连接查询,语句如下: SELECT a.YHID,a.TDID,b.YHMC,b.YHZH,c.TDMC FROM (km_tdcy a LEFT JOIN km_xtyh b ON a.YHID=b

数据库多表连接查询的实现方式

数据库多表连接查询的实现方式 连接查询是关系数据库中最主要的查询,主要包括自连接.内连接.外连接和交叉连接.通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 在关系数据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在一个表中.当检索数据时,通过连接操作查询出存放在多个表中的不同实体的信息.连接操作给用户带来很大的灵活性,他们可以在任何时候增加新的数据类型.为不同实体创建新的表,然后通过连接进行查询. 内连